找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5652|回復(fù): 2
打印 上一主題 下一主題
收起左側(cè)

如何把Arduino轉(zhuǎn)換為51單片機(jī)

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:298693 發(fā)表于 2018-4-10 18:05 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
如題,樓主做的畢設(shè)是基于單片機(jī)的車廂節(jié)能燈系統(tǒng)的設(shè)計(jì),然后我從t 寶店買了光敏電阻,店家給了我程序。可是我不知道怎么轉(zhuǎn)換為單片機(jī)語言,這個(gè)是Arduino,店鋪給你程序如下

實(shí)現(xiàn)的內(nèi)容是以51單片機(jī)為控制單元設(shè)計(jì)控制系統(tǒng),添加光敏電阻傳感器模塊,當(dāng)列車車廂內(nèi)亮度不足時(shí),照明燈亮起,車廂內(nèi)越暗,燈越亮,實(shí)現(xiàn)自動智能控制。光敏電阻采用模擬量輸出,亮度改變用4個(gè)發(fā)光二極管模擬表示,根據(jù)實(shí)驗(yàn)實(shí)際檢測設(shè)定兩個(gè)閾值,分別實(shí)現(xiàn)控制1個(gè)發(fā)光二極管亮,2個(gè)發(fā)光二極管亮或4個(gè)發(fā)光二極管全亮,以此原理設(shè)計(jì)并制作樣機(jī)。

  1. int potpin = A0; //指定模擬端口A0


  2. int val = 0; //聲明臨時(shí)變量
  3. int g_Light = 0;




  4. /*printf格式化字符串初始化*/
  5. int serial_putc( char c, struct __file * )
  6. {
  7.   Serial.write( c );
  8.   return c;
  9. }
  10. void printf_begin(void)
  11. {
  12.   fdevopen( &serial_putc, 0 );
  13. }


  14. void setup()
  15. {
  16.   Serial.begin(9600);//設(shè)置串口波特率為9600
  17.   printf_begin();
  18. }
  19. /* AD: x: 0~1024   Lux: y: 10000~0
  20.    y = -(10000/1024) x + 10000;
  21.    y = -9.76x + 10000; 約等于y = -10x+10000   */




  22. void loop()
  23. {
  24.   val = analogRead(potpin); //讀取A0口的電壓值并賦值到val
  25.   g_Light = -10 * val + 10000;
  26.   printf("$AR,GMS%d,%d#\n", val, g_Light);
  27.   delay(1000);
  28. }
復(fù)制代碼



分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:305347 發(fā)表于 2018-4-10 18:34 | 只看該作者
void setup() 是IO口配置和串口波特率設(shè)置。
回復(fù)

使用道具 舉報(bào)

板凳
ID:305675 發(fā)表于 2018-4-11 10:17 | 只看該作者
main里初始化 然后while(1)執(zhí)行l(wèi)oop里的功能 print改成uartwrite
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表