51单片机控制SIM900A发短信问题

2019-03-24 17:17发布

怎么通过矩阵键盘输入电话号码实现发短信功能,现在只能实现给固定的号码发短信,求大神们指点! 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
17条回答
dong2213dong
1楼-- · 2019-03-25 00:50
王绍霖 发表于 2016-8-31 12:03
在单片机怎么直接转成Unicode码呀?而不是我们手动去转码呢

首先矩阵键盘的编码一定是你自己的程序处理吧,单片机不能规定你按下哪个按键表示那个数字吧,0-9 10个数字的unicode码很简单,就是多出来一个字节而已,简单的举例,假如,电话号码你需要10个数字,那你定义一个20个字节长度的字符数组,下标为偶数的元素赋值成0x00,按键检测到的字符依次放入下标为奇数的数组元素中,不就可以了
hujj
2楼-- · 2019-03-25 03:31
能够实现给固定的电话号码发送短信,只要读取键盘输入的号码,并对电话号码作简单的判别(如是否全数字,是否符合11位且开头数字为1等等),就很容易将键盘输入的号码替换固定的号码发送短信的。
人民币的幻想
3楼-- · 2019-03-25 08:11
 精彩回答 2  元偷偷看……
王绍霖
4楼-- · 2019-03-25 10:08
hujj 发表于 2016-8-31 08:52
能够实现给固定的电话号码发送短信,只要读取键盘输入的号码,并对电话号码作简单的判别(如是否全数字,是 ...

可是固定号码是Unicode码,是这样的Uart1Sends("AT+CMGS="00310038003000370030003900300038003500310036" ");//此处修改为对方的电话号,电话话的UNICON编码;
我试用数组代进去发不出短信
王绍霖
5楼-- · 2019-03-25 10:18
人民币的幻想 发表于 2016-8-31 11:06
做个数组存放拨号即可,矩阵键盘复杂输入,然后判断后存入数组,最后发送

固定号码的代码是这样的Uart1Sends("AT+CMGS="00310038003000370030003900300038003500310036" ");//此处修改为对方的电话号,电话话的UNICON编码;
然后假设我号码已经存放到数组a[]了,我把代码改成这样也不得Uart1Sends("AT+CMGS="003'a[0]'003'a[1]'003'a[2]'003'a[3]'003'a[4]'003'a[5]'003'a[6]'003'a[7]'003'a[8]'003'a[9]'003'a[10]'" ");能这么写吗
dong2213dong
6楼-- · 2019-03-25 10:59
 精彩回答 2  元偷偷看……

一周热门 更多>