找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2246|回复: 1
打印 上一主题 下一主题
收起左侧

请教我一下

[复制链接]
跳转到指定楼层
楼主
ID:58663 发表于 2014-1-9 21:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include "stc12c56xx.h"
#include "intrins.h"
#include "math.h"
#define PI 3.1415926
#define uchar unsigned char
#define uint unsigned int
uint count;
short sin_data;
void mcu_init();
void delay(uint x);
void main()
{
mcu_init();
for(count=1;count<270;count++)
{
  sin_data=126*(sin(2*PI*count/270))+128;
}
while(1);
}
void mcu_init()
{
P1M0=0x00;
P1M1=0xff;
P2M0=0x00;
P2M1=0xff;
}
请教一下为啥当count值到3f时sin_data的值会与手工计算的值不一样

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:57920 发表于 2014-1-11 10:50 | 只看该作者
首先,你说的不一样不知道差别到底是多大。
再一个,你说的问题可能在于计算sin的精度不行

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表