原创 LINUX驅動常用的模塊操作命令

1. 常用的模塊操作命令 (1)lsmod(list module,將模塊列表顯示),功能是打印出當前內核中已經安裝的模塊列表 (2)insmod(install module,安裝模塊),功能是向當前內核中去安裝一個模塊,用法是insm

原创 QT編譯錯誤——cannot find file .pro

Cannot find file: D:\WorkArea\電梯檢測畢設\scope\scopeV3\scope.pro. 15:37:13: 進程"D:\Program\Qt\Qt5.8.0\5.8\msvc2015_64\bin\qm

原创 微機中驗證負數以補碼存儲程序

1. 相關基礎知識  負數的補碼等於它的反碼加1,即在其反碼的最低位加1就爲該數的補碼,且在計算機中負數以補碼形式進行存儲。 已知   1、int型佔4字節(32位二進制)char型佔1字節(8位二進制)           2、字符在內

原创 什麼是驅動?

一、什麼是驅動? (1)驅動一詞的字面意思 (2)物理上的驅動 (3)硬件中的驅動 (4)inux內核驅動。軟件層面上的驅動廣義上是指:這一段代碼操作了硬件去動,所以這一段代碼就叫硬件的驅動程序。狹義上驅動程序就是專指操作系統中用來操控硬

原创 signed 與 unsigned 關鍵字

#include <stdio.h> #include <string.h> int main(void) { signed char a[1000]; int i; for(i=0;i<1000;i++) a[i]= -

原创 stm32——自定義HID設備

一、開發環境 硬件平臺:stm32f767 軟件平臺:keil5,cubmx 二、cubemx創建工程 1、配置RCC 2、USB_OTG_FS,選擇Device_Only模式  3、Middleware——USB_DEVICE 4、配置

原创 GSLX680驅動的移植實踐

將gslX680觸摸屏驅動移植到自己的開發板上(對應的源碼文件gslX680.c),並且實現可以使用make menuconfig進行動態的加載和卸載因爲觸摸屏設備屬於一種典型的輸入設備,所以他的驅動源碼最好是放在 drivers\inp

原创 vscode 中使用git

1. 首先在電腦中安裝git,點擊會出現git bash here 2、新建一個文件夾test,裏面創建一個文件mian.c,打開vscode工作區  此時點擊代碼管理,會出現 3、點擊vscode中的設置,輸入git,編輯setting

原创 上位機——自定義HID設備與主機通訊

一、開發環境 平臺:vs2015 頭文件: #include <Windows.h> #include <SetupAPI.h> #include <hidsdi.h> #include <initguid.h> 庫文件: setupa

原创 嵌入式軟件工程師面試(2)

1、 int main(void) { unsigned int a = 6; int b = -20; char c; (a+b>6)?(c=1):(c=0); } 則c=1,但a+b=-14;如果a爲int類

原创 編譯驅動的MAKEFILE解析

一個典型的編譯驅動模塊的Makefile文件如下所示: KERN_DIR = /root/driver/kernel obj-m += module_test.o all:   make -C $(KERN_DIR) M=`pwd`

原创 嵌入式軟件工程師面試(1)

1、int a[10]={1,2,3,4,5,6,7,8,9,0};    int *p=&a[1];    則p[6]等於8 2、整數數組清零 bzero函數 函數原型:void bzero(void *s, int n); 功能:將字

原创 stm32工程錯誤,包含core_cm3.h

  在包含#include "core_cm3.h" 時,前面加#include "stm32f10x.h"文件

原创 2.PendSV的觸發

        PendSV典型使用場合是在上下文切換時(在不同任務之間切換)。 我們先簡單的寫幾段代碼實現PendSV的中斷觸發,當然也會涉及到CM3內核彙編指令,自從開始挑戰的那天起,你不如地獄誰入地獄!       如何觸發Pend

原创 Qt測算程序運行時間

【問題描述】程序運行時間是編程的一項重要指標,在QT中如何測算程序的運行時間呢? 測試函數: #include <math.h> void function() { unsigned int i,j;