資料介紹
描述
#1。介紹
該項目是一個簡單的示例,展示了一種將帶有 USB Host Shield 的 Arduino 設置為能夠與 BleuIO 加密狗通信的 USB CDC 主機的快速方法。
當 BleuIO Dongle 連接到 USB 端口時,BleuIO Dongle 將開始廣播。然后它將充當終端,接受輸入并將數據發送到 Arduino 虛擬 Com 端口。
在本示例中,我們使用了帶有 SparkFun 的 USB Host Shield (DEV-09947) 的 Arduino Uno Rev. 3。
#2。你需要什么
- 固件版本為 2.1.0 或更高版本的BleuIO BLE USB 加密狗
- Arduino Uno Rev. 3 ( https://store.arduino.cc/products/arduino-uno-rev3)
- USB 主機屏蔽 ( https://www.sparkfun.com/products/9947)
- Arduino IDE(https://www.arduino.cc/en/software)
SparkFun 板的要求
- 使用 SparkFun 板,您似乎必須在 Vin 或筒式千斤頂上提供外部電源。來自 USB 電纜的 5V 不起作用。
- 您還必須從引腳 D7 到 RESET 使用跳線。
#3。關于守則
你可以在這里獲得項目
該項目基于Host USB Shield Library 2.0中的“acm_terminal”示例
?

函數 Acm.RcvData() 最大可能的最大數據包大小為 64 字節,因此為了容納我們將接收的數據量,我們使用三個緩沖區來接收來自 BleuIO 加密狗的數據。
如果緩沖區接收到任何數據,我們將其打印到連接到虛擬 COM 端口的串行終端。
void loop()
{
Usb.Task();
if( Acm.isReady()) {
uint8_t rcode;
uint8_t rcode2;
uint8_t rcode3;
/* reading the keyboard */
if(Serial.available()) {
uint8_t data= Serial.read();
/* sending to the BleuIO Dongle */
rcode = Acm.SndData(1, &data);
if (rcode)
ErrorMessage<uint8_t>(PSTR("SndData"), rcode);
}//if(Serial.available()...
if(start_flag == 0x00)
{
rcode = Acm.SndData(strlen((char *)START_CMDS), (uint8_t *)START_CMDS);
if (rcode)
{
ErrorMessage<uint8_t>(PSTR("SndData"), rcode);
}
start_flag = 0x01;
}
/* reading the BleuIO Dongle */
uint8_t buf[64];
uint16_t rcvd = 64;
uint8_t buf2[64];
uint16_t rcvd2 = 64;
uint8_t buf3[64];
uint16_t rcvd3 = 64;
uint8_t dongle_input[3*64];
uint16_t input_indx = 0;
memset(dongle_input, 0, sizeof(dongle_input));
rcode = Acm.RcvData(&rcvd, buf);
delay(1);
rcode2 = Acm.RcvData(&rcvd2, buf2);
delay(1);
rcode3 = Acm.RcvData(&rcvd3, buf3);
if (rcode && rcode != hrNAK)
{
ErrorMessage<uint8_t>(PSTR("Ret"), rcode);
}
if (rcode2 && rcode2 != hrNAK)
{
ErrorMessage<uint8_t>(PSTR("Ret"), rcode2);
}
if (rcode3 && rcode3 != hrNAK)
{
ErrorMessage<uint8_t>(PSTR("Ret"), rcode3);
}
if( rcvd ) { //more than zero bytes received
for(uint16_t i=0; i < rcvd; i++ ) {
Serial.print((char)buf[i]); //printing on the screen
dongle_input[input_indx] = buf[i];
input_indx++;
}
}
if( rcvd2 ) { //more than zero bytes received
for(uint16_t i=0; i < rcvd2; i++ ) {
Serial.print((char)buf2[i]); //printing on the screen
dongle_input[input_indx] = buf2[i];
input_indx++;
}
}
if( rcvd3 ) { //more than zero bytes received
for(uint16_t i=0; i < rcvd3; i++ ) {
Serial.print((char)buf3[i]); //printing on the screen
dongle_input[input_indx] = buf3[i];
input_indx++;
}
}
dongle_input[input_indx] = 0x00;
// Example on a way for the Arduino to react to BleuIO events
if(strlen((char *)dongle_input) != 0)
{
if(strstr((char *)dongle_input, "handle_evt_gap_connected") != NULL)
{
Serial.print("<>");
}
else if(strstr((char *)dongle_input, "handle_evt_gap_disconnected") != NULL)
{
Serial.print("<>");
}
}
}//if( Usb.getUsbTaskState() == USB_STATE_RUNNING..
}
我們還將來自加密狗的最新數據存儲到 dongle_input 緩沖區中,并通過一個簡單的“解析器”運行它,以展示如何對事件做出反應并讓 Arduino 執行某些操作的簡單方法。
在這個例子中,我們明確地尋找 BLE 連接或斷開事件。找到后,我們只需將“<>”或“<>”打印到終端。
#4。如何設置項目
從 GitHub 下載項目
在這里獲取項目
https://github.com/smart-sensor-devices-ab/arduino_bleuio_example
克隆項目,或者將其下載為 zip 文件并將其解壓縮到您的 Arduino 文件夾中。
下載 USB Host Shield Library 2.0
從此處下載庫 ( https://felis.github.io/USB_Host_Shield_2.0/)并將文件夾放入 Arduino 文件夾內的庫文件夾中。
(有關安裝庫的信息,請參閱:http://www.arduino.cc/en/Guide/Libraries)
或者通過 Arduino IDE 下載:
在 Arduino IDE 中選擇 Sketch>Include Library>Manage Library

?
搜索 USB Host Shield Library 2.0 并單擊“安裝”

?
#5。運行示例
在 Arduino IDE 中單擊上傳按鈕將項目上傳到您的 Arduino。
?

使用 TeraTerm、Putty 或 CoolTerm 等串行終端仿真程序打開“Arduino Uno 虛擬 COM 端口”。
串口設置:波特率:115200 數據位:8 奇偶校驗:無 停止位:1 流量控制:無
或者在 Arduino IDE 中打開 Arduino Monitor 并在右下角選擇“回車”和“115200 波特”
?

您應該看到“開始”一詞,然后看到加密狗運行兩個命令:設置響應數據和啟動廣告。您現在可以向加密狗鍵入命令。
?

?
?
?
?
?
?
?
?
?
- 加密狗檢測工具 1次下載
- 加密狗檢測工具 1次下載
- 小型藍牙低功耗(BLE)參考設計
- 彩虹加密狗破解技巧數據代碼分析 9次下載
- 加密狗復制軟件加密狗克隆工具免費下載 50次下載
- USB硬件加密狗檢測工具V10.0 29次下載
- BLE低功耗藍牙模塊為何如此受歡迎? 18次下載
- SEE Electrical硬件加密狗的編程 15次下載
- 免加密狗西門子CP341模塊的ModbusRTU通信實現熊田忠 8次下載
- C#教程之讀寫加密狗 30次下載
- 抄板軟件QuickPcb2005加密狗版 0次下載
- 抄板軟件_QuickPcb2005加密狗版 0次下載
- 基于混沌保密的USB軟件加密狗及其反解密研究
- 基于通用USB接口的軟件加密狗設計
- 開源硬件-TIDC-CC2540-BLE-USB-CC2540 藍牙低能耗 USB 軟件狗 PCB layout 設計
- 低功耗藍牙技術的特點 低功耗藍牙如何實現低功耗? 2219次閱讀
- 加密狗是什么意思 加密狗怎么解除加密 8919次閱讀
- 高性能加密狗芯片LKT4302U概述 755次閱讀
- 低功耗藍牙(BLE)技術簡介和工作方式 4102次閱讀
- 低功耗藍牙版本的特性演進簡介 4888次閱讀
- 使用MAX32520的安全USB加密狗應用示例 1066次閱讀
- 傳統藍牙和低功耗藍牙到底有什么區別 8272次閱讀
- 關于低功耗藍牙的8點關鍵知識 3891次閱讀
- 使用支持BLE 4.2規范的芯片進行實現應用系統設計 859次閱讀
- dfrobotDFRobot BLE4.1藍牙通信模組簡介 1868次閱讀
- dfrobot低功耗藍牙控制器簡介 1592次閱讀
- 低功耗藍牙(BLE)模塊——EMB1066 3184次閱讀
- 如何實現低功耗藍牙技術的低功耗? 3638次閱讀
- 無電池式低功耗藍牙Beacon:采用能量采集技術的BLE 2015次閱讀
- 主流藍牙BLE控制芯片詳解(1):TI CC2540 5.2w次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數據手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537798次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191187次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論