各位大佬,問一下,我這個程式為什么做不出來ppm調制,哪里有問題,就是利用串口輸出特定的波形,為什么出來的波形是亂的????
#include<reg52.h>
unsigned char flag;
unsigned int i,a;
void main()
{
TMOD=0x20;
TH1=0xfd;
TL1=0xfd;
TR1=1;
REN=1;
SM0=0;
SM1=1;
i=1;
EA=1;
ES=1;
while(1)
{
if(flag==1)
{
ES=0;
flag=0;
SBUF=a;
while(!TI);
TI=0;
ES=1; } }}
void ser() interrupt 4
{
for(;i<=8;i++) { RI=0;
switch(i) {
case 1: SBUF=0x20; break;
case 2: SBUF=0x01; break;
case 3: SBUF=0x40; break;
case 4: SBUF=0x02; break;
case 5: SBUF=0x40; break;
case 6: SBUF=0x10; break;
case 7: SBUF=0x10; break;
case 8: SBUF=0x20; break;
default: SBUF=0x00; break; }
a=SBUF;
if(i==8) i=1;
flag=1; }}
或者,哪個大佬有成熟的利用單片機做ppm調制的程式啊?
uj5u.com熱心網友回復:
使用單片機AT89C52實作PPM調制與解調轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/131680.html
標籤:嵌入開發(WinCE)
上一篇:求助:basys2數碼管問題
