共2条
1/1 1 跳转至页
问
请问,我用149芯片来模拟一个串口,我用SMCLK。频率为4M。我现在要设置串口的波特率为9600,TACTL = TASSEL1+MC_2+TACLR;
#define BitCnt 14 // send/receive 1 bit,the number Timer A counts
#define HalfBitCnt 6 // half of BitCnt
这其中的BitCnt和HalfBitCnt 改怎样计算?就是用4096000/9600=426.666来确定 BitCnt =426 ; HalfBitCnt=6吗?
我这样设置发现有时收到的数据不正确,为什么?
我上次模拟波特率为2400的很好。用ACLK=32768 ,计算后用BitCnt =14 ;HalfBitCnt = 6 ,这个很好。TACTL = TASSEL0+MC_2+TACLR; 答 1: 楼主, halfbit=bitcnt/2=426/2=213
#define BitCnt 14 // send/receive 1 bit,the number Timer A counts
#define HalfBitCnt 6 // half of BitCnt
这其中的BitCnt和HalfBitCnt 改怎样计算?就是用4096000/9600=426.666来确定 BitCnt =426 ; HalfBitCnt=6吗?
我这样设置发现有时收到的数据不正确,为什么?
我上次模拟波特率为2400的很好。用ACLK=32768 ,计算后用BitCnt =14 ;HalfBitCnt = 6 ,这个很好。TACTL = TASSEL0+MC_2+TACLR; 答 1: 楼主, halfbit=bitcnt/2=426/2=213
共2条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |