作者invalid (everlasting)
站内Electronics
标题Re: [讨论] 8051之c语言问题
时间Sat Feb 10 06:40:45 2007
※ 引述《CuckooBoy (阿书)》之铭言:
: (恕删)
: main()
: {
: unsigned int SDI_cnt,LE_cnt = 0;
: unsigned int i = 1;
: while(1)
: {
: DCLK = 0;
: SDI = SDI_LUT[SDI_cnt];
这边看起来SDI是DCLK rising edge sample
: DCLK = 1;
: if (LE_cnt == 48*i-1||LE_cnt == 766)
: {
: LE = 1;
这个LE看起来是DCLK falling edge sample
: (恕删)
一般来说,介面设计通常会有一致性
也就是rising/falling edge通常不会混用(除非要增加sampling rate)
上面的程式输出看起来就有两种edge sampling
最好可以换掉,不然对外接的电路有很多坏处的
另外,利用uP来产生timing是非常不智的
上面的程式duty cycle会很不平衡
要记得每一个inst会花去cpu几个cycle的时间
等到下一次DCLK=0已经是很久以後的是了
所以8051才会有自己的UART
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.229.37.240