Njira yopangira pulogalamu yokhazikika ndikuyiyika mu gawoli imapezeka pansi pa Linux ndi Windows. M'nkhaniyi tiwona mwatsatanetsatane momwe, pogwiritsa ntchito zitsanzo za SDK zomwe zaperekedwa
Ndisanalembe nkhaniyi, mnzanga wina, yemwe anali kutali ndi Linux, adandifunsa kuti ndifotokozere momwe ndingapangire gawo langa la gawo la SIM7600E-H mwatsatanetsatane momwe ndingathere. Njira yowunika kupezeka kwa nkhaniyo inali mawu akuti "kuti ndimvetse."
Ndikukupemphani kuti mudziwe zimene zinachitika.
Nkhaniyi imawonjezeredwa ndikusinthidwa pafupipafupi
Kuwonetseratu
Nthawi zambiri, ma module olumikizirana ma cell amagwiritsidwa ntchito potumiza deta, kuyimba mawu, kutumiza ma SMS ndi zina zotero. Zonsezi zimachitika kudzera mu malamulo a AT otumizidwa kuchokera ku microcontroller yakunja. Koma pali gulu la ma module omwe amakulolani kuti mugwiritse ntchito ma code omwe atulutsidwa kunja. Nthawi zina, izi zimachepetsa kwambiri bajeti yonse ya chipangizocho, kukulolani kuti muyike microcontroller yosavuta (komanso yofanana) pa bolodi kapena kusiya zonse. Kubwera kwa ma module a LTE olamulidwa ndi Android kapena Linux OS ndi zida zawo zamphamvu, ndizotheka kuthetsa ntchito zilizonse zomwe zimapezeka kwa mapurosesa otchuka. Nkhaniyi ilankhula za SIM7600E-H, yoyendetsedwa ndi Linux OS. Tiwona momwe tingatsitsire ndikuyendetsa pulogalamu yomwe ingagwiritsidwe ntchito.
Munjira zambiri, nkhaniyi imachokera ku chikalata "SIM7600 Open Linux Development quide", koma zowonjezera zina, choyamba, Baibulo la Chirasha lidzakhala lothandiza. Nkhaniyi ithandiza omwe angoyamba kumene kuphunzira gawoli kumvetsetsa momwe angatsitse pulogalamu ya demo ndikupereka maluso ofunikira pantchito yotsatira.
Mwachidule za yemwe SIM7600E-H ndi
SIM7600E-H ndi gawo lomangidwa pa purosesa ya ARM Cortex-A7 1.3GHz yochokera ku Qualcomm, yokhala ndi makina opangira a Linux (kernel 3.18.20) mkati, omwe amatha kugwira ntchito ndi European (kuphatikiza Russian) frequency band 2G/3G/LTE yothandizira Cat. .4, yopereka liwiro lalikulu lotsitsa mpaka 150Mbps ndi liwiro lokweza mpaka 50Mbps. Zotumphukira zolemera, kuchuluka kwa kutentha kwa mafakitale komanso kupezeka kwa GPS/GLONASS navigation yomangidwa kumaphimba zofunikira zilizonse pakuyankhira kwamakono m'munda wa M2M.
Kachitidwe mwachidule
Module ya SIM7600E-H imachokera ku Linux opaleshoni system (kernel 3.18.20). Momwemonso, fayilo yamafayilo imamangidwa pamaziko a fayilo yolemba UBIFS (Unsorted Block Image File System).
Zofunikira za fayiloyi ndi izi:
- amagwira ntchito ndi magawo, amakulolani kupanga, kuchotsa, kapena kusintha kukula kwake;
- imawonetsetsa kulumikizidwa kwamtundu wonse wa media;
- imagwira ntchito ndi midadada Yoyipa;
- amachepetsa mwayi wa kutayika kwa deta panthawi yamagetsi kapena kulephera kwina;
- kusunga zipika.
Kufotokozera kwatengedwa
Iwo. Mafayilo amtundu uwu ndi abwino kwa zovuta zogwirira ntchito za module komanso zovuta zamphamvu zomwe zingatheke. Koma izi sizikutanthauza kuti kusakhazikika kwa mphamvu kudzakhala njira yoyembekezeredwa yogwiritsira ntchito module; zimangowonetsa kutheka kwakukulu kwa chipangizocho.
chikumbukiro
Kugawidwa kwa malo okumbukira kumapangidwa motere:
Pali magawo atatu ofunika kuwunikira:
ubi0: mizu - werengani-pokha ndipo muli ndi Linux kernel yokha
uwu 0:usf - amagwiritsidwa ntchito makamaka pa pulogalamu ya ogwiritsa ntchito ndi kusungirako deta
ubi0:zonse - zosungidwa pazosintha za FOTA. Ngati malo omwe alipo sikokwanira kutsitsa zosinthazo, makinawo amachotsa mafayilo osagwiritsidwa ntchito motero amamasula malo. Koma pazifukwa zachitetezo, simuyenera kuyika mafayilo anu pamenepo.
Magawo onse atatu amagawidwa motere:
Mafilimu
kukula
ntchito
Mukhozanso
Gwiritsani%
Wokwezedwa
ubi0: mizu
40.7M
36.2M
4.4M
89%
/
uwu 0:usf
10.5M
360K
10.1M
3%
/ deta
ubi0: cachefs
50.3M
20K
47.7M
0%
/ cache
Zomwe zilipo
Monga tafotokozera pamwambapa, gawoli limamangidwa pa Cortex A7 chipset kuchokera ku Qualcomm. Zingakhale zolakwika kusapereka maziko apamwamba kwambiri kuti agwiritse ntchito pulogalamu ya ogwiritsira ntchito ndikutsitsa purosesa yayikulu ya chipangizocho potsitsa gawo lina la pulogalamuyo ku module.
Pa pulogalamu ya ogwiritsa ntchito, njira zotsatirazi zolumikizira zizipezeka kwa ife:
Pin no.
dzina
Sys GPIO No.
Zochita zofikira
Func1
Func2
Kokani
Kudzuka kusokoneza
6
SPI_CLK
-
UART1_RTS
-
-
B-PD
-
7
SPI_MISO
-
UART1_Rx
-
-
B-PD
-
8
SPI_MOSI
-
UART1_Tx
-
-
B-PD
-
9
SPI_CS
-
UART1_CTS
-
-
B-PD
-
21
SD_CMD
-
SD-Khadi
-
-
B-PD
-
22
SD_DATA0
-
SD-Khadi
-
-
B-PD
-
23
SD_DATA1
-
SD-Khadi
-
-
B-PD
-
24
SD_DATA2
-
SD-Khadi
-
-
B-PD
-
25
SD_DATA3
-
SD-Khadi
-
-
B-PD
-
26
SD_CLK
-
SD-Khadi
-
-
B-PN
-
27
SDIO_DATA1
-
WLAN
-
-
B-PD
-
28
SDIO_DATA2
-
WLAN
-
-
B-PD
-
29
SDIO_CMD
-
WLAN
-
-
B-PD
-
30
SDIO_DATA0
-
WLAN
-
-
B-PD
-
31
SDIO_DATA3
-
WLAN
-
-
B-PD
-
32
SDIO_CLK
-
WLAN
-
-
B-PN
-
33
Chithunzi cha GPIO3
GPIO_1020
MIFI_POWER_EN
GPIO
MIFI_POWER_EN
B-PU
-
34
Chithunzi cha GPIO6
GPIO_1023
MIFI_SLEEP_CLK
GPIO
MIFI_SLEEP_CLK
B-PD
-
46
Chithunzi cha ADC2
-
ADC
-
-
-
-
47
Chithunzi cha ADC1
-
ADC
-
-
B-PU
-
48
SD_DET
GPIO_26
GPIO
GPIO
SD_DET
B-PD
X
49
STATUS
GPIO_52
kachirombo
GPIO
kachirombo
B-PD
X
50
Chithunzi cha GPIO43
GPIO_36
MIFI_COEX
GPIO
MIFI_COEX
B-PD
-
52
Chithunzi cha GPIO41
GPIO_79
BT
GPIO
BT
B-PD
X
55
SCL
-
I2C_SCL
-
-
B-PD
-
56
S.D.A.
-
I2C_SDA
-
-
B-PU
-
66
RTS
-
UART2_RTS
-
-
B-PD
-
67
CTS
-
UART2_CTS
-
-
B-PD
-
68
RxD
-
UART2_Rx
-
-
B-PD
-
69
RI
-
GPIO (RI)
-
-
B-PD
-
70
DCD
-
GPIO
-
-
B-PD
-
71
TxD
-
UART2_Tx
-
-
B-PD
-
72
Zamgululi
-
GPIO (DTR)
-
-
B-PD
X
73
PCM_OUT
-
PCM
-
-
B-PD
-
74
PCM_IN
-
PCM
-
-
B-PD
-
75
Maofesi a Mawebusaiti
-
PCM
-
-
B-PD
-
76
Zamgululi
-
PCM
-
-
B-PU
-
87
Chithunzi cha GPIO77
Chithunzi cha GPIO77
BT
GPIO
BT
B-PD
-
Gwirizanani, mndandandawu ndi wochititsa chidwi komanso zindikirani: gawo la zotumphukira limagwiritsidwa ntchito kugwiritsa ntchito gawo ngati rauta. Iwo. Kutengera gawo loterolo, mutha kupanga rauta yaying'ono yomwe idzagawa intaneti kudzera pa Wi-Fi. Mwa njira, pali yankho lokonzeka lopangidwa lotchedwa SIM7600E-H-MIFI ndipo ndi miniPCIE khadi yokhala ndi gawo la soldered SIM7600E-H ndi zikhomo zingapo za mlongoti, imodzi mwa izo ndi mlongoti wa Wi-Fi. Komabe, uwu ndi mutu wankhani ina.
Lachitatu (osati tsiku la sabata)
Zomwe mukufunikira sizipezeka kwaulere - SDK, yomwe mungapemphe kwa wogawa.
Kuyika zida zogwirira ntchito ndi module
Pambuyo pake, tigwira ntchito pansi pa Windows ngati OS yodziwika bwino kwa ogwiritsa ntchito ambiri.
Tidzafunika kukhazikitsa mapulogalamu ofunikira munjira zingapo zosavuta kuti tigwire bwino ntchito ndi gawoli:
- GNU / Linux
- Cygwin
- Oyendetsa
- ADB
Kuyika GNU/Linux
Kuti mupange pulogalamuyi, mutha kugwiritsa ntchito compiler iliyonse yogwirizana ndi ARM-Linux. Tigwiritsa ntchito SourceryCodeBenchLiteARM GNU/Linuxtranslater yomwe ikupezeka kuti titsitse pa
Kuonetsetsa kuti zigawo zonse zaikidwa molondola, ine ndisiya zithunzi zochepa za ndondomeko yoyikapo. Kwenikweni, palibe chovuta pakuyika.
Kuonetsetsa kuti zigawo zonse zaikidwa molondola, ine ndisiya zithunzi zochepa za ndondomeko yoyikapo. Kwenikweni, palibe chovuta pakuyika.
- Timavomereza mgwirizano wa laisensi
- Tchulani foda yoyika
- Timasiya zigawo zofunikira zosasinthika
- Zisiyeni momwe zilili
- Kangapo "Kenako", "Ikani" ndipo kwenikweni ndi momwemo
Kukhazikitsa Cygwin
Kupitilira apo, pakukulitsa, mudzafunika ma library ndi zofunikira kuchokera pazomwe zaperekedwa
Palibe chovuta pakuyika Cygwin, chinthu chokhacho chomwe muyenera kusankha ndi galasi pomwe woyikirayo amatsitsa mafayilo ofunikira, sankhani iliyonse ndikuyiyika, komanso mndandanda wazinthu zofunikira ndi malaibulale, ndikusiya malaibulale onse omwe alipo. zida zosankhidwa.
Kuyika kwa driver
Pambuyo polumikizidwa ndi PC, muyenera kukhazikitsa madalaivala. Izi zitha kupemphedwa kwa wogawa wanu (zovomerezeka). Sindikupangira kuti mufufuze nokha pa intaneti, chifukwa ... Zingatenge nthawi yambiri kuti tipeze zomwe zidayambitsa mkangano wa chipangizocho.
Pakati pa madoko osankhidwa tikuwona zotsatirazi:
Windows
Linux
mafotokozedwe
SimTech HS-USB Diagnostics
USB siriyo
Diagnostic Interface
SimTech HS-USB NMEA
USB siriyo
GPS NMEA Interface
SimTech HS-USB AT Port
USB siriyo
AT port Interface
SimTech HS-USB Modem
USB siriyo
Modem port Interface
SimTech HS-USB Audio
USB siriyo
USB Audio Chiyankhulo
SimTech HS-USB WWAN Adapter
USB Net
NDIS WWAN Interface
Android Composite ADB Interface
USB ADB
Android onjezerani debug port
Monga momwe mwawonera, palibe USB ADB pakati pa madoko omwe ali pazithunzi, izi ndichifukwa choti doko la ADB mu gawoli latsekedwa mwachisawawa ndipo muyenera kuyiyambitsa potumiza lamulo la 'AT+CUSBADB=1' ku AT. doko la gawo ndikuyiyambitsanso (izi zitha kuchitika ndi lamulo la 'AT + CRESET').
Zotsatira zake, timapeza mawonekedwe omwe tikufuna mu woyang'anira chipangizocho:
Tamaliza ndi madalaivala, tiyeni tipite ku ADB.
Kukhazikitsa ADB
Pitani ku tsamba lovomerezeka la Android Developer
Tsitsani ndikumasula zomwe zasungidwa ku mizu ya drive C.
Zosintha Zachilengedwe
Mukakhazikitsa Cygwin, muyenera kuwonjezera njira ya Cygwin/bin/ pakusintha kwachitukuko (Classic Control Panel β System β Advanced system settings β Advanced β Environment Variables β System Variables β Njira β Sinthani) monga momwe zasonyezedwera pa chithunzi pansipa:
Momwemonso, yonjezerani njira yosungiramo zakale za ADB zomwe zatsitsidwa ndi zosatulutsidwa ku muzu wa drive C.
Dinani Chabwino kangapo ndikuyambitsanso kompyuta.
Mukayambiranso, mutha kuwona ngati ADB ikugwira ntchito moyenera potsegula mzere wolamula (Win + R β cmd) ndikulemba lamulo la 'adb version'. Timapeza zinthu monga izi:
Tiyeni tilumikize gawoli ku PC (ngati ilumikizidwa) ndikuwona ngati ADB ikuwona ndi lamulo la 'adb zida':
Zachitika, izi zimamaliza kasinthidwe ka kugwirizana kwa module ndipo tikhoza kuyambitsa chipolopolo kuti tigwire ntchito ndi module.
Kutsegula ndi kupanga SDK
Tsopano popeza tili ndi chipolopolo ndipo titha kuyamba kugwira ntchito ndi mzere wolamula wa module, tiyeni tiyese kupanga pulogalamu yathu yoyamba kuti tilowe mu module.
Anthu ambiri angakhale ndi vuto ndi izi! Chifukwa Gawoli limagwira ntchito pa Linux; kupewa kugundana mukamalemba ma code pansi pa Windows, ndi bwino kuphatikizira m'malo omwe amakhala - Linux.
Sitikhala mwatsatanetsatane momwe, pakalibe Linux komanso chikhumbo choyiyika pamakina anu, mutha kuyiyika pamakina enieni. Tidzagwiritsa ntchito VirtualBox, kukhazikitsa Ubuntu 20.04 (mtundu wapano panthawi yolemba) ndipo pansi pake tiyamba kugwira ntchito ndi ophatikiza, ma SDK, ndi zina zambiri.
Tiyeni tipite ku malo a Linux ndikutsegula zolemba zomwe talandira kuchokera kwa wogawa.
simcom@VirtualBox:~/Desktop/OpenLinux$ sudo tar -xzf MDM9x07_OL_2U_22_V1.12_191227.tar.gz
Pitani ku sim_open_sdk chikwatu ndikuwonjezera chilengedwe:
simcom@VirtualBox:~/Desktop/OpenLinux/sim_open_sdk$ cd sim_open_sdk
simcom@VirtualBox:~/Desktop/OpenLinux/sim_open_sdk$ source sim_crosscompile/sim-crosscompile-env-init
Timakhalabe mufoda yomweyi ndikuchita malamulo otsatirawa tili momwemo.
Ikani laibulale ya libncurses5-dev ngati siyinayikepo:
simcom@VirtualBox:~/Desktop/OpenLinux/sim_open_sdk$ sudo apt-get update && sudo apt-get install libncurses5-dev -y
Python, ngati sichinayikidwenso:
simcom@VirtualBox:~/Desktop/OpenLinux/sim_open_sdk$ sudo apt-get install python -y
ndi gcc:
simcom@VirtualBox:~/Desktop/OpenLinux/sim_open_sdk$ sudo apt-get install gcc
Kuphatikiza:
Tsopano tifunika kusonkhanitsa mafayilo angapo, timayendetsa malamulo otsatirawa motsatizana.
Ngati zenera la kasinthidwe ka kernel likuwonekera pakuphatikiza, ingosankha Tulukani ndikubwerera ku kontrakitala; sitiyenera kukonza kernel tsopano.
Timachita:
simcom@VirtualBox:~/Desktop/OpenLinux/sim_open_sdk$ make
Pangani bootloader:
simcom@VirtualBox:~/Desktop/OpenLinux/sim_open_sdk$ make aboot
Kupanga kernel:
simcom@VirtualBox:~/Desktop/OpenLinux/sim_open_sdk$ make kernel_menuconfig
simcom@VirtualBox:~/Desktop/OpenLinux/sim_open_sdk$ make kernel
Konzani mizu yamafayilo:
simcom@VirtualBox:~/Desktop/OpenLinux/sim_open_sdk$ make rootfs
Kwa ogwiritsa ntchito a Linux zidzakhala zofunikira kupanga dalaivala wa module:
simcom@VirtualBox:~/Desktop/OpenLinux/sim_open_sdk$ make kernel_module
Tiyeni tipange demo:
simcom@VirtualBox:~/Desktop/OpenLinux/sim_open_sdk$ make demo
Pambuyo pake mafayilo angapo atsopano adzawonekera mu sim_open_sdk/output directory:
simcom@VirtualBox:~/Desktop/OpenLinux/sim_open_sdk$ ls output/
appsboot.mbn boot.img demo_app helloworld system.img
Chotsatsa
Tiyeni tiyese kukweza chiwonetserocho mu module yathu ndikuwona zomwe zimatulukamo.
Sakanizani
Mu sim_open_sdk chikwatu titha kuwona fayilo demo_app. Timachitenga ndikuchisamutsa ku muzu wa drive C pa PC yomwe gawoli limalumikizidwa. Kenako yambitsani mzere wolamula wa Windows (Win + R -> cmd) ndikulowa:
C:>adb push C:demo_app /data/
Console idzatiuza kuti:
C:demo_app: 1 file pushed, 0 skipped. 151.4 MB/s (838900 bytes in 0.005s)
Izi zikutanthauza kuti fayilo idatumizidwa bwino ku gawoli ndipo zomwe tiyenera kuchita ndikuyendetsa. Tisazengereze.
Timachita:
C:>adb shell
Timakulitsa ufulu wa fayilo yotsitsidwa:
/ # cdhmod 777 /data/demo_app
Ndipo timathamanga:
/ # /data/demo_app
Mu console yomweyi, gawoli litiuza izi:
SDK_VER : SIM_SDK_VER_20191205
DEMO_VER: SIM_SDK_VER_20191205
Please select an option to test from the items listed below.
1. WIFI 2. VOICE CALL
3. DATA CALL 4. SMS
5. WDS(APN) 6. NAS
7. AT 8. OTA
9. TTS 10. GPIO
11. GPS 12. Bluetooth
13. TCP/UDP 14. Timer
15. ADC 16. I2C
17. UIM(SimCard) 18. DMS(IMEI,MEID)
19. UART 20. SPI
21. Version 22. Ethernet
23. FTP 24. SSL
25. HTTP(S) 26. FTP(S)
27. MQTT(S) 28. ALSA
29. DEV 30. AUDIO
31. JSON 32. LBS
99. EXIT
Option >
Tiyeni tiwone IMEI ya gawoli, lowetsani 7 (kusintha kumachitidwe olamula) ndikulowetsa 5:
Please select an option to test from the items listed below.
1. WIFI 2. VOICE CALL
3. DATA CALL 4. SMS
5. WDS(APN) 6. NAS
7. AT 8. OTA
9. TTS 10. GPIO
11. GPS 12. Bluetooth
13. TCP/UDP 14. Timer
15. ADC 16. I2C
17. UIM(SimCard) 18. DMS(IMEI,MEID)
19. UART 20. SPI
21. Version 22. Ethernet
23. FTP 24. SSL
25. HTTP(S) 26. FTP(S)
27. MQTT(S) 28. ALSA
29. DEV 30. AUDIO
31. JSON 32. LBS
99. EXIT
Option > 7
Please select an option to test from the items listed below.
1. get Module Version 2. get CSQ
3. get CREG 4. get ICCID
5. get IMEI 6. get CIMI
99. back
Option > 5
IMEI: 867584030090489
Please select an option to test from the items listed below.
1. get Module Version 2. get CSQ
3. get CREG 4. get ICCID
5. get IMEI 6. get CIMI
99. back
Option >
Mwanjira iyi tiwona IMEI ya module.
Monga chomaliza
Ndikukhulupirira kuti tinatha kudziwa bwino momwe tingayambitsire gawoli. M'nkhani zotsatirazi, tiwona momwe nsanja ya SIM7600E-H imapereka, komanso momwe mungasinthire patali ntchito yanu mu gawoli.
Ndikukupemphani kuti mufunse mafunso mu ndemanga, ndikuwonetsanso kuti ndi gawo liti la kuthekera kwa gawoli lomwe liyenera kuwonetsedwa m'nkhani zotsatila.
Source: www.habr.com