8892浏览
查看: 8892|回复: 19

简易手机

[复制链接]
本帖最后由 丄帝De咗臂 于 2015-5-23 18:21 编辑

一、名称:简易手机(此品是我等当年在温州中学所做)二、功能:该简易手机初步实现了打电话、接电话、和挂电话的功能。
三、器材:    LCD显示屏https://www.dfrobot.com.cn/goods-372.html    4*4 薄膜数字键盘https://www.dfrobot.com.cn/goods-431.html
    GPS模块https://www.dfrobot.com.cn/goods-716.html
    Arduino控制器
四、接线:
   LCD显示屏:GND、VCC、A4和A5;
   GPS模块:连接Arduino,其中S1在comm端、S2在Arduino端、Uart Seclect在中间。
   4*4薄膜数字键盘:接在数字口的6~13,其中D在数字口13。
五、程序代码:
  1. #include <Keypad.h>
  2. #include <Wire.h>
  3. #include <String.h>
  4. #include <LiquidCrystal_I2C.h>
  5. LiquidCrystal_I2C lcd(0x27,16,2);
  6. const byte ROWS = 4;
  7. const byte COLS = 4;
  8. char telNumber[81];
  9. int lenth=0;
  10. char callNumber[13];
  11. char ch=0;
  12. int i=0;
  13. int j=0;
  14. char hexaKeys[ROWS][COLS] = {
  15. {'1','2','3','A'},
  16. {'4','5','6','B'},
  17. {'7','8','9','C'},
  18. {'*','0','#','D'}
  19. };
  20. byte rowPins[ROWS] = {6,7,8,9};
  21. byte colPins[COLS] = {10,11,12,13};
  22. //initialize an instance of class NewKeypad
  23. Keypad customKeypad = Keypad(makeKeymap(hexaKeys),rowPins,colPins,ROWS,COLS);
  24. //remove buff dada
  25. void clearBuff(void)
  26. {
  27.   for(j=0;j<81;j++)
  28.   {
  29.     telNumber[j]=0x00;
  30.   }
  31.   j=0;
  32. }
  33. void setup(){
  34.      lcd.init();                      // initialize the lcd
  35.      lcd.backlight();
  36.      pinMode(2,OUTPUT);
  37.      pinMode(3,OUTPUT);
  38.      pinMode(4,OUTPUT);
  39.      pinMode(5,OUTPUT);
  40.     //GSM开机时序
  41.     digitalWrite(5,HIGH);
  42.     delay(1500);
  43.     digitalWrite(5,LOW);  
  44.      //使能GSM串口
  45.     digitalWrite(3,LOW);
  46.     digitalWrite(4,HIGH);
  47.        delay(2000);
  48.     //设置波特率
  49.     Serial.begin(9600);
  50.     //等待call ready
  51.     delay(5000);
  52.     delay(5000);
  53.     delay(5000);
  54.     digitalWrite(2,HIGH);
  55.     delay(1000);
  56.    // Serial.println("AT");
  57.   lcd.clear();
  58.   lcd.print("Welcome to:");  
  59.    
  60. }
  61. void  loop()
  62. {
  63.     char key=customKeypad.getKey();
  64.     if(key!=NO_KEY)
  65.       {
  66.           delay(500);
  67.           if(key!='*'&&key!='B')
  68.           {
  69.            telNumber[i++]=key;
  70.            lcd.setCursor(0,3);
  71.            lcd.print("call:");        
  72.            lcd.print(telNumber);
  73.           }
  74.           if(key=='*')//按*打电话
  75.           {
  76.             Serial.print("ATD");
  77.             Serial.print(telNumber);
  78.             Serial.println(";");
  79.             Serial.flush();
  80.             delay(1000);
  81.             clearBuff();
  82.           }
  83.           else if(key=='#')
  84.           {
  85.              Serial.println("ATH\r\n");//按#挂电话
  86.              lcd.setCursor(0,3);
  87.              lcd.print("call:Hang up");   
  88.             delay(100);   
  89.             clearBuff();  
  90.           }
  91.           else if(key=='B')
  92.            {
  93.               Serial.println("ATA\r\n");//按B挂电话
  94.               lcd.setCursor(0,3);
  95.               lcd.print("answer:ringing");  
  96.               Serial.flush();
  97.               clearBuff();
  98.            }
  99.          
  100.       }
  101.    }
复制代码



六、使用方法:
       1.将程序下载到控制器当中;
   2.使用4*4 薄膜数字键盘作为拨号键盘;
   3.打电话:在键盘上按下要拨的电话号码,然后按*键(LCD显示屏会显示拨出去的电话号码),电话即可拨出去;
   4.接电话:按B键接听电话;
   5.挂电话:按#键挂电话。
七、实物图:当时就留下一张,抱歉!
简易手机图1







大连林海  初级技神

发表于 2015-5-23 19:32:40

这个创意不错 以前的东西玩的好嗨,东西齐全就是很绝的
回复

使用道具 举报

丄帝De咗臂  高级技匠
 楼主|

发表于 2015-5-23 19:36:59

大连林海 发表于 2015-5-23 19:32
这个创意不错 以前的东西玩的好嗨,东西齐全就是很绝的

那个GPS老贵了,现在买不起了:'(
回复

使用道具 举报

大连林海  初级技神

发表于 2015-5-23 19:38:16

丄帝De咗臂 发表于 2015-5-23 19:36
那个GPS老贵了,现在买不起了

我看了 陈老师那各种好东西 不多说实话 df的产品很全 质量很好 就是 ····
回复

使用道具 举报

丄帝De咗臂  高级技匠
 楼主|

发表于 2015-5-23 19:39:44

大连林海 发表于 2015-5-23 19:38
我看了 陈老师那各种好东西 不多说实话 df的产品很全 质量很好 就是 ···· ...

还好还好,你也会慢慢攒全的。。。
回复

使用道具 举报

大连林海  初级技神

发表于 2015-5-23 19:41:26

丄帝De咗臂 发表于 2015-5-23 19:39
还好还好,你也会慢慢攒全的。。。

是的 咱们慢慢攒全 不再羡慕:D
回复

使用道具 举报

丄帝De咗臂  高级技匠
 楼主|

发表于 2015-5-23 19:43:10

大连林海 发表于 2015-5-23 19:41
是的 咱们慢慢攒全 不再羡慕

对啊,大不了直接去DF公司去玩啊,哈哈
回复

使用道具 举报

大连林海  初级技神

发表于 2015-5-24 08:03:33

丄帝De咗臂 发表于 2015-5-23 19:43
对啊,大不了直接去DF公司去玩啊,哈哈

以后上班就可以买了
回复

使用道具 举报

free  高级技师

发表于 2015-5-24 10:06:36

挺好的,
回复

使用道具 举报

dbc0301  高级技匠

发表于 2015-5-24 15:27:52

虽然没有多大的实用价值,但还是给你赞一个吧
回复

使用道具 举报

丄帝De咗臂  高级技匠
 楼主|

发表于 2015-5-24 15:56:53

dbc0301 发表于 2015-5-24 15:27
虽然没有多大的实用价值,但还是给你赞一个吧

感激不尽啊:loveliness:
回复

使用道具 举报

hnyzcj  版主

发表于 2015-5-24 20:55:25

点赞一个,张璐多弄点功能出来。
回复

使用道具 举报

丄帝De咗臂  高级技匠
 楼主|

发表于 2015-5-24 20:59:23

hnyzcj 发表于 2015-5-24 20:55
点赞一个,张璐多弄点功能出来。

没器材了
回复

使用道具 举报

20060606  高级技匠

发表于 2020-8-22 20:17:39

好创意,要是有个外壳就更好了
回复

使用道具 举报

JVUm7ppJGaRK  高级技师

发表于 2023-7-9 18:26:39

6啊,膜拜膜拜
回复

使用道具 举报

花生编程  中级技匠

发表于 2023-7-9 21:32:48

好有创意!
回复

使用道具 举报

花生编程  中级技匠

发表于 2023-7-9 21:34:56

太赞了!!
回复

使用道具 举报

Amos Young  中级技师

发表于 2023-7-13 17:37:32

好创意,要是有个外壳就更好了
回复

使用道具 举报

三春牛-创客  初级技神

发表于 2023-7-16 22:09:25

创意不错
回复

使用道具 举报

三春牛-创客  初级技神

发表于 2023-7-16 22:11:58

如果能做一下外观就更好了!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4 备案

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail