智慧型家居實訓第二天 嵌入式linux程式設計

2021-08-31 09:14:47 字數 2096 閱讀 5840

*****===嵌入式linux程式設計***************

程式設計環境:linux

程式語言:linux介面+c語言

嵌入式開發流程:

1.編寫工程

2.編譯工程

3.移植工程

4.測試工程

**********==編寫工程**********=

使用程式設計軟體: npp

安裝方式:雙擊執行檔案----》下一步----》完成

1.1 開啟npp軟體----》檔案-----》新建檔案

1.2 右擊新建檔案----》另存為---->找到共享資料夾位置

儲存為.c檔案

1.3 建立模型

int main(int argc,const char *argv)

1.4 輸出語句

引號的最後\n  1.在列印的時候自動換行輸出

2.才能顯示在開發板的螢幕上

1.5 儲存  ctrl+s

**********===編譯工程**********

使用交叉工具編譯鏈:

本地編譯:gcc(c語言) g++(c++語言)

開發板編譯:arm-linux-gcc

本地編譯:

1.gcc  + 檔名.c

生成乙個可執行檔案a.out

執行:./a.out

2.gcc  檔名.c   -o  檔名

指定生成

檢視函式  使用linux裡面的man手冊

man man 檢視所有的手冊

1 executable programs or shell commands               核心函式  

2 system calls (functions provided by the kernel)     系統函式

3 library calls (functions within program libraries)  c語言庫函式

2.1開啟函式  open()

#include

#include

#include

int open(const char *pathname, int flags);

返回值:成功 :返回乙個檔案描述符  乙個大於的零的數

失敗 :返回  -1

引數:const char *pathname  -----》字串型別的路徑名

int flags   -----》許可權

o_rdonly -------read-------唯讀許可權

o_wronly -------write------只寫許可權

o_rdwr   ----read and write ----可讀可寫

2.2寫函式  write()

#include

ssize_t write(int fd, const void *buf, size_t count);

返回值:成功  返回寫入的位元組數

失敗  返回 -1

引數:int fd            檔案的描述符

const void *buf   寫入檔案的位元組數的緩衝區

size_t count      寫入的緩衝區的大小

2.3關閉檔案 close()

#include

int close(int fd);

返回值:成功  返回 0

失敗  返回 -1

引數:int fd            檔案的描述符

一張24位位圖 :bmp

錯誤列印函式  perror

#include

void perror(const char *s);

引數:const char *s   字串

讀取函式  read()

#include

ssize_t read(int fd, void *buf, size_t count);

返回:成功  返回乙個讀取的位元組數

失敗  返回 -1

引數:int fd           檔案描述符

void *buf        讀的緩衝區

size_t count     讀的位元組數

github源**

蘇嵌嵌入式第二天Linux實訓

2020 7 3上午開始了第二天的實訓內容,今天開始了真正的學習,老師講解了linux開發相關的基礎知識,其中介紹了許多和c語言有關知識,這讓我認識到了之前學的c語言的重要性,並且打算趁著週末好好複習鞏固一下c語言。以下為老師布置的隨堂作業,站內資料 鏈結統一放在文章最後。1.嵌入式底層開發為什麼選...

嵌入式第二天

型別 int float 變數 變數名 變數值 int a a 90 0 1 100 a 10 a 10 a 100 scanf d a printf d a if 一 運算子續 算術運算子 關係運算子 邏輯運算子 優先順序 算術運算 關係運算 邏輯運算 1.賦值運算子 將符號右邊結果賦值給符號左邊...

實訓第二天

經過上一天的學習,明確了目的開始構造系統。1建立資料庫和 2在專案裡面建立資料夾help,images,lib 在lib裡新增鏈結mysql資料報的jar包 在images裡面新增 分別寫好college,status,students,user實體類 實體類就是乙個載體。現在的設計差不多都是一張表...