标题: 如何把Arduino转换为51单片机 [打印本页]

作者: 282768158    时间: 2018-4-10 18:05
标题: 如何把Arduino转换为51单片机
如题,楼主做的毕设是基于单片机的车厢节能灯系统的设计,然后我从t 宝店买了光敏电阻,店家给了我程序。可是我不知道怎么转换为单片机语言,这个是Arduino,店铺给你程序如下

实现的内容是以51单片机为控制单元设计控制系统,添加光敏电阻传感器模块,当列车车厢内亮度不足时,照明灯亮起,车厢内越暗,灯越亮,实现自动智能控制。光敏电阻采用模拟量输出,亮度改变用4个发光二极管模拟表示,根据实验实际检测设定两个阈值,分别实现控制1个发光二极管亮,2个发光二极管亮或4个发光二极管全亮,以此原理设计并制作样机。

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


  2. int val = 0; //声明临时变量
  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);//设置串口波特率为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. }
复制代码




作者: jjflu123    时间: 2018-4-10 18:34
void setup() 是IO口配置和串口波特率设置。
作者: jtx1900    时间: 2018-4-11 10:17
main里初始化 然后while(1)执行loop里的功能 print改成uartwrite




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1