久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 6498|回復(fù): 5
收起左側(cè)

單片機(jī)模擬EV1527的發(fā)射程序,輸出是錯(cuò)的

[復(fù)制鏈接]
ID:218365 發(fā)表于 2019-1-16 21:05 | 顯示全部樓層 |閱讀模式
Untitled-1.jpg

圖上紅色是keil 仿真輸出,藍(lán)色是是實(shí)際輸出,keil仿真是我想要的,但輸出是錯(cuò)的不知道為什

單片機(jī)源程序
  1. #include<STC8.h>
  2. #define T_SYN_H 1 //發(fā)送狀態(tài)1 發(fā)送同步碼高電平,存儲(chǔ)同步碼高電平脈寬
  3. #define T_SYN_L 2 //發(fā)送狀態(tài)3 發(fā)送同步碼低電平,
  4. #define T_DATA_H 3 //發(fā)送狀態(tài)3 發(fā)送數(shù)據(jù)碼高電平,
  5. #define T_DATA_L 4 //接收狀態(tài)4 發(fā)送數(shù)據(jù)碼低電平,
  6. sbit RF_T =P3^4; //發(fā)射端口


  7. struct RF_Code
  8. {

  9. unsigned int y;
  10. unsigned char x2;
  11. };

  12. struct RF_Code RF_Send_Code={42405,2};
  13. unsigned char Send_Times=0;

  14. bit RF_T0_Send(struct RF_Code *SendCode)
  15. {
  16. static unsigned char RF_T_Step;
  17. static unsigned char i; //i發(fā)送編碼的字節(jié)數(shù),j發(fā)送取位輔助變量,每次發(fā)射完成重新清零
  18. static unsigned char j;
  19. //static bit abit; static bit bbit;
  20. //Lcd_Show_Str(50,28,Num2Str(RF_T_Step,2,0),WHITE,BLUE,1); //測(cè)試 f(i==1)
  21. switch (RF_T_Step)
  22. {

  23. case T_SYN_H:
  24. //RF_R_STOP;
  25. P34=1; //同步碼高電平
  26. TL0 = 0x66; //8F FE 0.2ms@22.1184
  27. TH0 = 0xFC; //66 FC 0.5ms
  28. RF_T_Step=T_SYN_L;
  29. i=0;
  30. j=0x80;

  31. break;

  32. case T_SYN_L:
  33. P34=0; //同步碼低電平
  34. TL0 = 0x66; //5C D3 6.2ms@22.1184
  35. TH0 = 0x90; //66 90 15.5ms
  36. RF_T_Step=T_DATA_H;


  37. //RF_T_Step=T_SYN_H ;
  38. break;

  39. case T_DATA_H:
  40. P34=1; //數(shù)據(jù)碼高電平
  41. //abit=(((unsigned char *)SendCode)[i]) & j ;
  42. if( (((unsigned char *)SendCode)[i]) & j )

  43. {
  44. TL0 = 0x33; //AE FB 600us@22.1184
  45. TH0 = 0xF5; //33 F5 1500us
  46. }
  47. else
  48. {
  49. TL0 = 0x66; //8F FE 200us@22.1184
  50. TH0 = 0xFC; //66 FC 500US

  51. }
  52. RF_T_Step=T_DATA_L;
  53. //lcdShowChar(50,28,'3',WHITE,BLUE,1);
  54. break;

  55. case T_DATA_L:
  56. P34=0; //數(shù)據(jù)碼低電平
  57. //bbit=(((unsigned char *)SendCode)[i]) & j ;
  58. if( (((unsigned char *)SendCode)[i]) & j ) //(((unsigned char *)SendCode)[i-1]) & j
  59. {
  60. TL0 = 0x66; //8F FE 200us@22.1184
  61. TH0 = 0xFC; //66 FC 500US
  62. }
  63. else
  64. {
  65. TL0 = 0x33; //AE FB 600ms@22.1184
  66. TH0 = 0xF5; //33 F5 1500us

  67. }
  68. j >>=1;

  69. if(!j)
  70. {i++;
  71. j=0x80;
  72. }
  73. RF_T_Step = T_DATA_H;
  74. break;


  75. default:
  76. RF_T_Step = T_SYN_H;
  77. WDT_CONTR |=0x10; //喂狗
  78. break;
  79. }
  80. if(i==sizeof(*SendCode))
  81. { RF_T_Step = T_SYN_H; return 1; } // RF_T_Step = T_DATA_H;
  82. else { return 0;} //測(cè)試 f(i==1)
  83. }


  84. void Timer0Init(void) //10毫秒@22.1184MHz
  85. {
  86. //IPH |=0x08; IP |=0x00; //提到3級(jí)
  87. AUXR &= 0x7F; //定時(shí)器時(shí)鐘12T模式(cpu12分頻)
  88. TMOD &= 0xF0; //設(shè)置定時(shí)器模式 T0GATE=0,T0_C/T=0,T0M1=0,T0M0=0;16位自動(dòng)重裝模式
  89. TL0 = 0x00; //設(shè)置定時(shí)初值
  90. TH0 = 0x00; //設(shè)置定時(shí)初值

  91. TF0 = 0; //清除TF0標(biāo)志
  92. // TR0 = 1; //定時(shí)器0開(kāi)始計(jì)時(shí)
  93. }



  94. void main()
  95. {
  96. unsigned long *ll ;
  97. ll=(unsigned long*)&RF_Send_Code;
  98. Timer0Init();
  99. ET0=1;//使能定時(shí)器0中斷

  100. EA=1;

  101. P3M1 &=0XEF; P3M0 |=0X10; //推挽輸出
  102. P34=0;
  103. //TL0=0XF0; TH0=0XFF; TR0=1;
  104. while(1)
  105. {
  106. if(!Send_Times) {Send_Times=15;TL0=0XF0; TH0=0XFF; TR0=1; }
  107. }
  108. }


  109. void Timer0_Isr() interrupt 1 //10毫秒@22.1184MHz
  110. {
  111. TF0 = 0; //清除TF0標(biāo)志
  112. //lcdShowCC(140,5,"信",RED,GBLUE,1);//信號(hào)符號(hào),不是‘信’ 字 測(cè)試
  113. if(Send_Times)
  114. {
  115. if(RF_T0_Send(&RF_Send_Code)) Send_Times--;
  116. //Lcd_Show_Str(50,28,Num2Str(Send_Times,2,0),WHITE,BLUE,1); //測(cè)試
  117. }
  118. else
  119. {
  120. RF_T=0;
  121. TR0=0; //發(fā)送完畢,停止Timer0
  122. //lcdShowCC(140,5,"信",BLACK,GBLUE,1);//信號(hào)符號(hào),不是‘信’ 字 測(cè)試

  123. }

  124. }

復(fù)制代碼


回復(fù)

使用道具 舉報(bào)

ID:138119 發(fā)表于 2019-1-30 08:41 | 顯示全部樓層
樓主先說(shuō)明一下問(wèn)題,是因?yàn)橄辔环戳藛幔?/td>
回復(fù)

使用道具 舉報(bào)

ID:218365 發(fā)表于 2019-2-16 19:35 | 顯示全部樓層
yfpc2006 發(fā)表于 2019-1-30 08:41
樓主先說(shuō)明一下問(wèn)題,是因?yàn)橄辔环戳藛幔?/blockquote>

相位反了,
我用軟件延時(shí)發(fā)送,就不會(huì)反相位
回復(fù)

使用道具 舉報(bào)

ID:236699 發(fā)表于 2019-10-30 22:39 | 顯示全部樓層
發(fā)射與接收的模塊廠家批次不同,有的會(huì)同時(shí)多個(gè)三極管,有的同時(shí)少個(gè)三極管,有的發(fā)射有、接收沒(méi)有,有的發(fā)射沒(méi)有、接收有。改一下輸出的正負(fù)邏輯就行。  原廠的遙控發(fā)射一般都多一個(gè)三級(jí)管取反,T寶上的幾元的發(fā)射小板就少一個(gè)三級(jí)管!
回復(fù)

使用道具 舉報(bào)

ID:218365 發(fā)表于 2020-1-4 20:07 | 顯示全部樓層
ztb096001 發(fā)表于 2019-10-30 22:39
發(fā)射與接收的模塊廠家批次不同,有的會(huì)同時(shí)多個(gè)三極管,有的同時(shí)少個(gè)三極管,有的發(fā)射有、接收沒(méi)有,有的發(fā) ...

嗯,認(rèn)同您的說(shuō)法,謝謝
回復(fù)

使用道具 舉報(bào)

ID:65237 發(fā)表于 2020-4-10 21:01 | 顯示全部樓層
學(xué)習(xí)中 EV1527
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 欧美日韩一 | 999热精品| 国产精品视频一二三区 | 成人免费av在线 | 久久久久久久久久久久久久av | 色伊人久久 | 成人欧美一区二区三区黑人孕妇 | 欧美日韩福利视频 | 人和拘一级毛片c | 日韩三级在线观看 | 91玖玖 | a视频在线观看 | 欧美乱码精品一区二区三区 | 亚洲精品99| 九色在线观看 | 男插女下体视频 | 欧美精品一区二区三区在线 | 久久小视频 | av成人在线观看 | 自拍中文字幕 | 欧美一区二区三区视频 | 久草福利| 日韩一区不卡 | 欧美乱操| 成人乱人乱一区二区三区软件 | 午夜精品久久久久久久久久久久 | 国产精品免费观看 | 亚洲入口 | 黑人巨大精品欧美一区二区免费 | 亚洲狠狠爱一区二区三区 | 久久久久综合 | a在线观看 | 久久久久国产精品午夜一区 | 国产欧美精品一区二区 | 精品久久久久久久久久久 | 久久不卡 | 亚洲国产一区二区三区在线观看 | 亚洲精品区 | 97高清国语自产拍 | 国产sm主人调教女m视频 | 成人动慢 |