性无码一区二区三区在线观看,少妇被爽到高潮在线观看,午夜精品一区二区三区,无码中文字幕人妻在线一区二区三区,无码精品国产一区二区三区免费

一口Linux
認證:優(yōu)質(zhì)創(chuàng)作者
所在專題目錄 查看專題
Linux scp命令
Linux命令cURL如何訪問FTP服務(wù)器
100ASK_IMX6ULL arm板子如何顯示圖片、漢字、劃線、背景色
在100ASK_IMX6ULL arm板子上移植個刷卡器
apt 和 apt-get 之間有什么區(qū)別?
如何搭建鴻蒙開發(fā)環(huán)境!手把手教你!
作者動態(tài) 更多
linux系統(tǒng)監(jiān)控工具小神器:btop
22小時前
有沒有權(quán)貴開后門讓子女做軟件開發(fā)人員?
1星期前
一文包你學(xué)會網(wǎng)絡(luò)數(shù)據(jù)抓包
03-15 09:26
C語言初學(xué)者編程水平上不來?不妨嘗試這10個C語言例子
03-14 20:31
Linux rootfs:如何開機就自動添加某個用戶?
03-09 22:18

在100ASK_IMX6ULL arm板子上移植個刷卡器

最近為了在arm板子上移植刷卡器,比較簡單,但也遇到了坑,現(xiàn)在和大家分享下。

購買刷卡器

某寶很多,應(yīng)該選哪一種呢?一口君一共買了4種刷卡器,有2種可以用,還有2種不能用。下圖為最方便的一款,一口君選的是ID卡。

為了避免做廣告嫌疑,就不貼購買鏈接了,但是切記:一定要買帶serial芯片的,比如ch341或者rs232 要不即使和這個刷卡器一樣,也可能無法使用,切記。

價格大概45左右,不要買18塊左右的,如果怕買錯,就給一口君留言。

移植USB轉(zhuǎn)串口驅(qū)動

進入內(nèi)核找到對應(yīng)的USB轉(zhuǎn)串口驅(qū)動,位置如下:

選中該驅(qū)動

保存退出,重新編譯內(nèi)核?!救绻瞧渌吞柕拇?,請選擇對應(yīng)的驅(qū)動】

測試設(shè)備

下載編譯好的內(nèi)核到開發(fā)板(一口君是通過nfs掛載然后拷貝到/boot目錄下),重啟后插上刷卡器,看到

ch341-uart converter now attached to ttyUSB0

就成功一半了。驅(qū)動會自動為該串口創(chuàng)建該字符設(shè)備,我們只需要像操作普通字符設(shè)備一樣就可以使用該刷卡器了。

查看字符設(shè)備節(jié)點

該字符設(shè)備節(jié)點位于/dev/ttyUSB0,由該字符設(shè)備節(jié)點信息可知該字符設(shè)備主設(shè)備號188,次設(shè)備號為0。

編寫測試程序

編寫測試程序思路很簡單,

  1. 通過open函數(shù)打開字符設(shè)備ttyUSB0
  2. 通過函數(shù)ioctl設(shè)置對應(yīng)參數(shù),波特率9600,數(shù)據(jù)位數(shù)8,奇偶校驗位0,終止位1。
  3. 通過read函數(shù)可以阻塞的讀取卡號了。

文件目錄結(jié)構(gòu)如下:

card.c

  1 #include <stdio.h>  2 #include <unistd.h>  3 #include "IC_serial.h"   4 void main(void)  5 {  6     int i;  7     int fd;  8     char buf[32]={0};  9      10     open_port(&fd); 11     uart_init(fd); 12      13     for(i=0;i<20;i++) 14     { 15         read_from_serial(fd,buf); 16         printf("card:%s\n",buf); 17     } 18 }

交叉編譯:

arm-linux-gnueabihf-gcc *.c -o run

運行結(jié)果如下:

完整代碼,關(guān)注公眾號,后臺回復(fù) card。

聲明:本內(nèi)容為作者獨立觀點,不代表電子星球立場。未經(jīng)允許不得轉(zhuǎn)載。授權(quán)事宜與稿件投訴,請聯(lián)系:editor@netbroad.com
覺得內(nèi)容不錯的朋友,別忘了一鍵三連哦!
贊 1
收藏 1
關(guān)注 181
成為作者 賺取收益
全部留言
0/200
成為第一個和作者交流的人吧