micropython 串口寫文件_MicroPython通過2G模塊串口收發短信

集成2G通信、定位模組,賦予物聯網特性。本例使用M6220,它是一款基于eSIM技術的2G模組,支持GSM/GPRS,提供GPS+北斗雙模定位功能,并具備一定的數據處理能力,其2G工作頻段有GSM850、GSM900、DCS1800和PCS1900,內置32Mb?Flash、32Mb RAM,提供GPRS數據傳輸、GSM短信業務,導航部分以UART或者I2C輸出,可提供NMEA0183協議輸出,支持A-GNSS。M6220是面向物聯網領域的非常強悍的模組之一。

Micropython串口

通過Micropython串口操作2G模組,本例使用UART4,將X1、X2接口短接,在REPL中通過如下指令測試自身收發功能。

>>> from pyb import UART

>>> u4 = UART(4,115200)

>>> u4.init(115200, bits=8, parity=None, stop=1)

>>> u4.write('UART4 send&receive test')

23

>>> u4.readall()

b'UART4 send&receive test'

>>>

首先導入UART模塊,通過UART(4, )定義串口4,使用init初始化波特率為115200,數據位8,奇偶校驗None,停止位1。

執行u4.write(‘UART4 send&receive test’)發送測試數據,然后通過u4.readall()讀取到UART4發送的數據,回環測試成功。

操作M6220

M6220需要3.8V電源供電,和TPYBoard的串口相連,并且共地。

查看模組狀態

使用串口發送AT指令操作M6220 2G模組。

首先發送AT測試模組和TPYBoard通信是否正確,如果正確模組會返回OK。

>>> u4.write('AT\r\n')

4

>>> u4.readall()

b'AT\r\n\r\nOK\r\n'

注意AT指令的發送末尾跟’\r\n’表示回車換行確認。

發送短信

指令AT+CPIN? 查看SIM卡狀態,如果一切正常返回READY:

>>> u4.write('AT+CPIN?\r\n')

10

>>> u4.readall()

b'AT+CPIN?\r\n\r\n+CPIN:READY\r\n\r\nOK\r\n'

指令AT+CGREG?查看SIM卡是否欠費,欠費返回1,0 …,否則返回1,1…

>>> u4.write('AT+CGREG?\r\n')

11

>>> u4.readall()

b'AT+CGREG?\r\n\r\n+CGREG: 1,1,"8109","22e2",0\r\n\r\nOK\r\n'

指令AT+CMGF=1設置短信格式為文本模式:

>>> u4.write('AT+CMGF=1\r\n')

11

>>> u4.readall()

b'AT+CMGF=1\r\n\r\nOK\r\n'

指令AT+CSDH=1顯示結果碼的值:

>>> u4.write('AT+CSDH=1\r\n')

11

>>> u4.readall()

b'AT+CSDH=1\r\n\r\nOK\r\n'

發送’test’到手機號的AT指令如下:

AT+GMGS=”手機號”

>test

因此REPL中操作流程如下:

1. 發送AT+GMGS=”手機號”,等待模組返回>提示符:

>>> u4.write('at+cmgs="手機號"\r\n')

23

>>> u4.readall()

b'at+cmgs="手機號"\r\n\r\n> '

2. 發送短信內容’test’:

>>> u4.write('test')

3. 調用writechar()發送ctrl-Z的十六進制數0x1a:

>>> u4.writechar(0x1a)

此時,手機成功收到短信,內容為’test’。

讀取短信

通過指令AT+CPMS=設置短信存儲位置,M6220短信存儲位置分為SIM卡和mem1。

設置所有短信均存儲在mem1中:

>>> u4.write('AT+CPMS="ME","ME","ME"\r\n')

讀取索引為1的短信,內容為’hello’:

>>> u4.write('AT+CMGR=1\r\n')

11

>>> u4.readall()

... hello ...

刪除短信

指令AT+CMGD=1刪除索引為1的短信:

>>> u4.write('AT+CMGD=1\r\n')

指令AT+CMGD=0刪除所有短信:

>>> u4.write('AT+CMGD=0\r\n')

安翔

原文:blog.csdn.net/messidona11/article/details/71708054

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/260200.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/260200.shtml
英文地址,請注明出處:http://en.pswp.cn/news/260200.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

洛谷P1130 紅牌

題目描述 某地臨時居民想獲得長期居住權就必須申請拿到紅牌。獲得紅牌的過程是相當復雜 ,一共包括N個步驟。每一步驟都由政府的某個工作人員負責檢查你所提交的材料是否符合條件。為了加快進程,每一步政府都派了M個工作人員來檢查材料。不幸的是&#xf…

GPS坐標換算

30.8872 》——>300.8872*60 53.232 ——>530.232*60 13.9230: 53 13.92"30: 53 13.92"》3053/6013.92/360030.887199同經度兩點之間距離dla30.887m * [差值/(1/3600)] 30.887m * 差值 *3600 111193.2m * 差值 同緯度兩點之間距離dlo30.887m * [差值/(1…

企業級應用框架(五)IOC容器在框架中的應用

前言 在上一篇我大致的介紹了這個系列所涉及到的知識點,在本篇我打算把IOC這一塊單獨提取出來講,因為IOC容器在解除框架層與層之間的耦合有著不可磨滅的作用。當然在本系列前面的三篇中我也提供了一種基于反射的解耦方式,但是始終不是很優雅&…

后端開發需要學什么_都2020年了,還在糾結學什么語言?| 后端篇

幾個禮拜前,一個學弟問我:“Ray,我打算之后要找工作了,不過現在自己沒有特別深入的語言,最近想找一門好好學一下,你覺得學什么語言好呀?”我表示:“這個要看你求職方向、個人喜好、市…

python掃描ip的端口打開情況

我們的韓國bss系統上線之后,要求對主機的端口、資源使用進行統計,端口每個主機去看,太費勁了,所以,就寫了這樣一個小程序,不是很完美但是,可以用啊!哈哈哈,別噴&#xff…

flash java 通信,Flash到JavaScript的通信實例

從HTML可以發送數據到Flash,反過來也可以. 這個例子演示了如何應用Flash的Fscommand來發送數據到Javascript.簡要步驟:Flash中新建一個文件,保存為flash_to_javascript.fla創建一個文本域,設置成輸入文本(Input Text),選擇"border"以便我們能看到他,指定他的變量為in…

10個非常有用的CSS hack和技術

轉自&#xff1a;http://www.qianduan.net/10-useful-css-hacks-and-technique.html 1 – 跨瀏覽器的inline-block <style>li {width: 200px;min-height: 250px;border: 1px solid #000;display: -moz-inline-stack;display: inline-block;margin: 5px;zoom: 1;*display:…

Java的遞歸算法

遞歸算法設計的基本思想是&#xff1a;對于一個復雜的問題&#xff0c;把原問題分解為若干個相對簡單類同的子問題&#xff0c;繼續下去直到子問題簡單到可以直接求解&#xff0c;也就是說到了遞推的出口&#xff0c;這樣原問題就有遞推得解。 關鍵要抓住的是&#xff1a; &…

python list遍歷定位元素_python for循環,第二遍定位不到元素?

ycyzharry: 也不行&#xff0c;我的代碼import unittestimport timeimport xlrdfrom selenium import webdriverimport seleniumdef open_excel(filefile.xls):try:data xlrd.open_workbook(file)return dataexcept Exception as e:print(str(e))def excel_table_byindex(file…

發現Java程序中的Bug

昨天在CSDN上閱讀 "Java中十個常見的違規編碼"這篇文章時&#xff0c;無意中找到了3個 "發現Java程序中的Bug"工具。 文章地址&#xff1a;http://www.csdn.net/article/2012-09-11/2809829-common-code-violations-in-java其中&#xff0c; FindBugs? - …

原生php登錄注冊,原生php登陸注冊

本以為一個登陸注冊功能十來分鐘就寫好了&#xff0c;沒想到thinkPHP用久了&#xff0c;原生的php不會寫了最開始我直接寫了類和方法&#xff0c;在前臺傳遞參數給類的login方法(action"index.php/login"),嘗試幾次發現無法訪問&#xff0c;這才意識到&#xff0c;這…

SpringMVC REST 風格靜態資源訪問配置

1 在web.xml中使用默認servlet處理靜態資源&#xff0c;缺點是如果靜態資源過多&#xff0c;則配置量會比較大&#xff0c;一旦有遺漏&#xff0c;則會造成資源無法正常顯示或404錯誤。 <!-- 靜態資源訪問控制 --><servlet-mapping><servlet-name>default<…

生成對象

var c[name,age,city]; var d[xiaogang,12,anhui]; var a{}; for(var i0;i<3;i){a[c[i]]d[i]; } console.log(a); //返回 {name: "xiaogang", age: "12", city: "anhui"} 轉載于:https://www.cnblogs.com/xiaozhumaopao/p/6046823.html

3.寄存器(內存訪問)

CPU中&#xff0c;用16位來存儲一個字。高8位存放高位字節&#xff0c;低8位存放低位字節。內存存儲中&#xff0c;內存單元是字節單元&#xff08;1單元1字節&#xff09;&#xff0c;則一個字要用兩個地址連續的內存單元存放。內存存儲中&#xff0c;高位字節&#xff0c;和低…

shiro前后端分離_為什么要前后端分離?前后端分離的優點是什么?

隨著互聯網的高速發展以及IT開發技術的升級&#xff0c;前后端分離已成為互聯網項目開發的業界標準使用方式。在實際工作中&#xff0c;前后端的接口聯調對接工作量占HTML5大前端人員日常工作的30%-50%&#xff0c;甚至會更高。接下來千鋒小編分享的廣州HTML5大前端學習就給大家…

POJ 2152 Fire

算是我的第一個樹形DP 的題&#xff1a; 題目意思&#xff1a;N個城市形成樹狀結構。現在建立一些消防站在某些城市&#xff1b;每個城市有兩個樹形cost&#xff08;在這個城市建立消防站的花費&#xff09;&#xff0c;limit &#xff1b; 我們要是每個城鎮都是安全的&#xf…

php 解析HTTP協議六種請求方法,get,head,put,delete,post有什么區別

GET&#xff1a; 請求指定的頁面信息&#xff0c;并返回實體主體。HEAD&#xff1a; 只請求頁面的首部。POST&#xff1a; 請求服務器接受所指定的文檔作為對所標識的URI的新的從屬實體。PUT&#xff1a; 從客戶端向服務器傳送的數據取代指定的文檔的內容。DELETE&#xff1a; …

python的socket連接不上_Python套接字只允許一個連接,但在新的連接上斷開,而不是拒絕...

我不確定我完全理解你的問題&#xff0c;但我認為下面的例子可以滿足你的要求。服務器可以斷開舊用戶的連接&#xff0c;為新用戶提供服務。在服務器端&#xff1a;#!/usr/bin/env pythonimport socketimport multiprocessingHOST 127.0.0.1PORT 50007# you can do your real…

dede搜索php在哪,dede搜索頁面怎么調用及相關搜索調用

dede搜索頁面怎么調用&#xff0c;那幾天有事情&#xff0c;所以導致博客幾天都一直沒有更新&#xff0c;之前我們講過dede內容頁面和dede列表模板的調用&#xff0c;今天我們一起來學習下搜索頁面的調用&#xff0c;很多做企業站朋友們都不知道dede的搜索頁怎么仿&#xff0c;…

電腦中病毒后被隱藏的文件的顯示

用批處理或DOS更改屬性。批處理就是建個記事本&#xff0c;輸入attrib -h -s -r %~dp0\*.* /s /d&#xff0c;然后另存為隨便.bat&#xff0c;把它放到那些隱藏文件夾外面&#xff08;不是里面&#xff09;&#xff0c;然后雙擊打開&#xff0c;等它自己關閉窗口就好了轉載于:h…