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

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

QQ登錄

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

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

L298N可編程串口驅(qū)動(dòng)器原理圖+單片機(jī)源碼等資料

[復(fù)制鏈接]
ID:280979 發(fā)表于 2018-3-18 00:46 | 顯示全部樓層 |閱讀模式
L298N可編程串口驅(qū)動(dòng)器電路原理圖:
0.jpg
簡(jiǎn)要說(shuō)明:
一、尺寸:長(zhǎng)93mmX87mmX40mm
二、主要芯片:L298N、光電耦合器 STC12C2052AD單片機(jī)
三、工作電壓:輸入電壓(5V~12V)輸入電壓的大小由被控制電機(jī)的額定電壓決定。
四、可驅(qū)動(dòng)直流(5~12V之間電壓的直流電機(jī)或者步進(jìn)電機(jī))
五、最大輸出電流2A (瞬間峰值電流3A
六、最大輸出功率25W
七、特點(diǎn):(需要對(duì)單片機(jī)進(jìn)行編程)
1、具有信號(hào)指示
2、轉(zhuǎn)速可調(diào)
3、抗干擾能力強(qiáng)
4、具有續(xù)流保護(hù)
5、可單獨(dú)控制兩臺(tái)直流電機(jī)
6、可單獨(dú)控制一臺(tái)步進(jìn)電機(jī)
7PWM脈寬平滑調(diào)速(可使用PWM信號(hào)對(duì)直流電機(jī)調(diào)速)
8、可實(shí)現(xiàn)正反轉(zhuǎn)
9、采用光電隔離
10具有擴(kuò)展IO開(kāi)口
11、四位LED燈指示(輸出信號(hào)顯示)
12、四位按鍵輸入(可以對(duì)單片機(jī)編程實(shí)現(xiàn)任何控制)

主圖.JPG DSC_0067.JPG DSC_0066.JPG DSC_0064.JPG DSC_0063.JPG
0.png

IO口模擬串口  能發(fā)送 能接收單片機(jī)源程序如下:
  1. #include <reg52.h>
  2. sbit PIN_RXD = P1^0; //接收引腳定義
  3. sbit PIN_TXD = P1^1; //發(fā)送引腳定義
  4. bit RxdOrTxd = 0; //指示當(dāng)前狀態(tài)為接收還是發(fā)送
  5. bit RxdEnd = 0; //接收結(jié)束標(biāo)志
  6. bit TxdEnd = 0; //發(fā)送結(jié)束標(biāo)志
  7. unsigned char RxdBuf = 0; //接收緩沖器
  8. unsigned char TxdBuf = 0; //發(fā)送緩沖器
  9. void ConfigUART(unsigned int baud);
  10. void StartTXD(unsigned char dat);
  11. void StartRXD();
  12. void main(){
  13.     EA = 1; //開(kāi)總中斷
  14.     ConfigUART(9600);
  15.     while (1){ //配置波特率為 9600
  16.         while (PIN_RXD); //等待接收引腳出現(xiàn)低電平,即起始位
  17.         StartRXD(); //啟動(dòng)接收
  18.         while (!RxdEnd); //等待接收完成
  19.         StartTXD(RxdBuf+1); //接收到的數(shù)據(jù)+1 后,發(fā)送回去
  20.         while (!TxdEnd); //等待發(fā)送完成
  21.     }
  22. }
  23. /* 串口配置函數(shù),baud-通信波特率 */
  24. void ConfigUART(unsigned int baud){
  25.     TMOD &= 0xF0; //清零 T0 的控制位
  26.     TMOD |= 0x02; //配置 T0 為模式 2
  27.     TH0 = 256 - (11059200/12)/baud; //計(jì)算 T0 重載值
  28. }
  29. /* 啟動(dòng)串行接收 */
  30. void StartRXD(){
  31.     TL0 = 256 - ((256-TH0)>>1); //接收啟動(dòng)時(shí)的 T0 定時(shí)為半個(gè)波特率周期
  32.     ET0 = 1; //使能 T0 中斷
  33.     TR0 = 1; //啟動(dòng) T0
  34.     RxdEnd = 0; //清零接收結(jié)束標(biāo)志
  35.     RxdOrTxd = 0; //設(shè)置當(dāng)前狀態(tài)為接收
  36. }
  37. /* 啟動(dòng)串行發(fā)送,dat-待發(fā)送字節(jié)數(shù)據(jù) */
  38. void StartTXD(unsigned char dat){
  39.     TxdBuf = dat; //待發(fā)送數(shù)據(jù)保存到發(fā)送緩沖器
  40.     TL0 = TH0; //T0 計(jì)數(shù)初值為重載值
  41.     ET0 = 1; //使能 T0 中斷
  42.     TR0 = 1; //啟動(dòng) T0
  43.     PIN_TXD = 0; //發(fā)送起始位
  44.     TxdEnd = 0; //清零發(fā)送結(jié)束標(biāo)志
  45.     RxdOrTxd = 1; //設(shè)置當(dāng)前狀態(tài)為發(fā)送
  46. }
  47. /* T0 中斷服務(wù)函數(shù),處理串行發(fā)送和接收 */
  48. void InterruptTimer0() interrupt 1{
  49.     static unsigned char cnt = 0; //位接收或發(fā)送計(jì)數(shù)
  50.     if (RxdOrTxd){ //串行發(fā)送處理
  51.         cnt++;
  52.         if (cnt <= 8){ //低位在先依次發(fā)送 8bit 數(shù)據(jù)位
  53.             PIN_TXD = TxdBuf & 0x01;
  54.             TxdBuf >>= 1;
  55.         }else if (cnt == 9){ //發(fā)送停止位
  56.             PIN_TXD = 1;
  57.         }else{ //發(fā)送結(jié)束
  58.             cnt = 0; //復(fù)位 bit 計(jì)數(shù)器
  59.             TR0 = 0; //關(guān)閉 T0
  60.             TxdEnd = 1; //置發(fā)送結(jié)束標(biāo)志
  61.         }
  62.     }
  63.         else { //串行接收處理
  64.         if (cnt == 0){ //處理起始位
  65.             if (!PIN_RXD){ //起始位為 0 時(shí),清零接收緩沖器,準(zhǔn)備接收數(shù)據(jù)位
  66.                 RxdBuf = 0;
  67.                 cnt++;
  68.             }

  69.                                         else{ //起始位不為 0 時(shí),中止接收
  70.             TR0 = 0; //關(guān)閉 T0
  71.         }
  72.         }

  73.                 else if (cnt <= 8){ //處理 8 位數(shù)據(jù)位
  74.             RxdBuf >>= 1; //低位在先,所以將之前接收的位向右移
  75.             //接收腳為 1 時(shí),緩沖器最高位置 1,
  76.             //而為 0 時(shí)不處理即仍保持移位后的 0
  77.             if (PIN_RXD){
  78.                 RxdBuf |= 0x80;
  79.             }
  80.             cnt++;
  81.         }
  82.                 else{ //停止位處理
  83.             cnt = 0; //復(fù)位 bit 計(jì)數(shù)器
  84.             TR0 = 0; //關(guān)閉 T0
  85.             if (PIN_RXD){ //停止位為 1 時(shí),方能認(rèn)為數(shù)據(jù)有效
  86.                 RxdEnd = 1; //置接收結(jié)束標(biāo)志
  87.             }
  88.         }
  89.     }
  90. }
復(fù)制代碼
0.png

所有資料51hei提供下載:
GYJ-0081_298可編程串口驅(qū)動(dòng)器發(fā)貨資料.rar (8.08 MB, 下載次數(shù): 16)



回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 日日干夜夜操 | 91久久久久 | 国产精品毛片在线 | 亚洲视频欧美视频 | 亚洲激情自拍偷拍 | 国产在线观看网站 | 国产玖玖| 中文字幕 亚洲一区 | 日本午夜视频 | 在线看h| 日本福利片 | 色婷婷综合成人av | 国产精品一区二区三区四区五区 | 婷婷激情在线 | 麻豆视频在线免费观看 | 99久久精品免费看国产高清 | 美人の美乳で授乳プレイ | 久久精品亚洲国产 | 一级毛片成人免费看a | 精品国产伦一区二区三区观看方式 | 麻豆精品国产免费 | 亚洲国产成人精品女人 | 欧美在线a| 日韩精品一 | 中文字幕免费观看 | 男女搞网站 | 久久久久久99 | 久久99这里只有精品 | 亚洲丝袜天堂 | 欧美日韩一二三区 | 日韩欧美精品在线播放 | 成人欧美一区二区三区在线播放 | 91亚洲精品国偷拍自产在线观看 | 无码日韩精品一区二区免费 | 91一区二区三区 | 日本在线播放 | 日韩国产在线观看 | 国产高清在线精品 | 中国一级特黄真人毛片免费观看 | 亚洲精品国产成人 | 国产精品久久久久久久一区二区 |