久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 5116|回復(fù): 9
收起左側(cè)

代碼管理技巧分享

  [復(fù)制鏈接]
ID:284866 發(fā)表于 2018-8-21 11:07 | 顯示全部樓層 |閱讀模式
自己總結(jié)的一些單片機(jī)代碼管理技巧,希望對(duì)新手有一定的幫助,本來(lái)是寫(xiě)給同班同學(xué)看的,現(xiàn)在共享出來(lái)啦

今天看到某位同學(xué)的單片機(jī)代碼,工程很大,包括 LCD、矩陣鍵盤(pán)+獨(dú)立按鍵掃描、紅外解碼 等等全放在 main.c 文件里,上千行的代碼,著實(shí)看著頭暈。
不知道單片機(jī)實(shí)習(xí)的老師有沒(méi)有教大家這種大工程的代碼管理技巧,如果沒(méi)講或者講了

但是沒(méi)聽(tīng)明白,可以借此文檔學(xué)習(xí)一番,簡(jiǎn)單而且實(shí)用。 代碼管理示例如下:


基礎(chǔ)管理:


1:工程目錄,第一級(jí)只有一個(gè)文件夾 AT89C51,第二級(jí)可以有多個(gè),這里我只有一個(gè)
(因?yàn)?51 的工程不需要太多的文件),第三級(jí)就是每個(gè)文件夾里面包含的源文件(.c),可 以看到第三級(jí)前面有加號(hào),點(diǎn)開(kāi)會(huì)有第四級(jí),是各個(gè)源文件所包含的頭文件(.h),看到這 里如果覺(jué)得頭暈可以忽略此條。
2:此處后面詳細(xì)解釋。
3:選項(xiàng)卡,每個(gè)點(diǎn)開(kāi)的源文件和頭文件都可以在此處點(diǎn)擊選擇查看,右擊可以選擇
close。
4:在每個(gè)源文件里如果想調(diào)用其他源文件里的函數(shù),包含其對(duì)應(yīng)頭文件即可。

如何實(shí)現(xiàn):
將各個(gè)模塊比如鍵盤(pán)掃描、LCD 液晶等等分別寫(xiě)在各個(gè)源文件里,分開(kāi)管理方便得多, 比如 LCD 驅(qū)動(dòng)的源代碼,示例如下
Lcd.c
源函數(shù)都寫(xiě)在源文件里,這個(gè)很好理解,毋庸贅言.



Lcd.h
在頭文件里將對(duì)應(yīng)源文件里的函數(shù)都聲明一遍

1、lcd.c 和 lcd.h 必須都要取一樣的名字 lcd 嗎? 可以不同,但是為了調(diào)用方便最好一樣
2、頭文件里的
#ifndef LCD_H
#define LCD_H
#endif              可以不要嗎?
可以,但是為了不重復(fù)包含最好加上(LCD_H 可以多加些下劃線,這樣取名只是 為了防止重復(fù))


3、還可以在源文件里聲明一些變量,然后在對(duì)應(yīng)的頭文件里用 extern 聲明這些變量(包 含但不限于各種類(lèi)型變量、數(shù)組、結(jié)構(gòu)體),
如果想用這些變量和函數(shù)只需要包含這個(gè)頭文件就可以直接使用啦!



以上就是一些代碼管理的一些基礎(chǔ)要點(diǎn),初次看起來(lái)可能會(huì)覺(jué)得比較麻煩,但是多做一
兩次之后就會(huì)其實(shí)很簡(jiǎn)單,熟練之后管理代碼會(huì)極為方便。 有不清楚的歡迎咨詢(xún)


下面講一些進(jìn)階的代碼管理,有興趣的可以繼續(xù)看下去: 第一張圖里的 2 處,點(diǎn)開(kāi)后如下:

可以發(fā)現(xiàn)這就是這個(gè)工程的各級(jí)目錄,前兩級(jí)目錄可以通過(guò)點(diǎn)擊箭頭所指的虛線框新 建,第三級(jí)可以點(diǎn) Add Files 來(lái)添加
一般 1 所處的地方只有一個(gè)文件夾,但是,如果有兩個(gè)工程絕大多數(shù)文件都是相同的, 只有個(gè)別文件不同,這樣我們就可以將這兩個(gè)工程合二為一,或者說(shuō)合多為一,在 2 處新建
一個(gè)文件夾 AT89C52,建了之后會(huì)發(fā)現(xiàn)其包含的文件與最初的那個(gè)是完全一樣的,這時(shí)我 們需要去掉那些這個(gè)工程里不需要的文件(注意不是直接remove,如果直接移除的話倆工 程里都移除了)
Keil4 里的操作:比如我們不想要下面的 lcd.c,右擊選擇第一個(gè) Options

出現(xiàn)如下畫(huà)面
將 include in target build 勾選掉,也就是去掉前面的勾勾

點(diǎn)擊 OK 即可,keil4 里會(huì)出現(xiàn)如下樣式


Keil5 里的操作,與 keil4 一樣,右擊不需要的源文件選擇 Options,將 include in target build
勾選掉,只是在工程目錄里的顯示樣式不一樣


最后講一下,在建了一個(gè)包含兩個(gè)工程的工程(好像有點(diǎn)矛盾?)之后會(huì)發(fā)現(xiàn)工程目錄 里面只有一個(gè)工程的目錄(好像有點(diǎn)難懂,見(jiàn)下圖)

可以看到只有一個(gè) AT89C51


如果我們想切換到 AT89C52 該如何做呢

點(diǎn)擊箭頭所指之處就可以啦

Keil5 亦是一樣

寫(xiě)在最后: 如有錯(cuò)誤之處歡迎點(diǎn)出批評(píng)指正; 在使用過(guò)程中還是有有疑問(wèn)的小伙伴歡迎一起討論喲!

完整的pdf格式文檔51黑下載地址:
代碼管理技巧.pdf (447.32 KB, 下載次數(shù): 54)


評(píng)分

參與人數(shù) 2黑幣 +62 收起 理由
tieq1952 + 12 贊一個(gè)!
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

ID:1 發(fā)表于 2018-8-22 02:21 | 顯示全部樓層
好資料,51黑有你更精彩!!!
回復(fù)

使用道具 舉報(bào)

ID:386381 發(fā)表于 2018-8-22 07:19 來(lái)自手機(jī) | 顯示全部樓層
非常實(shí)用的好資料謝謝樓主分享
回復(fù)

使用道具 舉報(bào)

ID:46999 發(fā)表于 2018-8-22 07:27 | 顯示全部樓層
好資料,有很高的參考價(jià)值。
回復(fù)

使用道具 舉報(bào)

ID:328121 發(fā)表于 2018-8-22 08:24 | 顯示全部樓層
有幫助,謝謝
回復(fù)

使用道具 舉報(bào)

ID:253767 發(fā)表于 2018-8-22 09:03 | 顯示全部樓層
謝謝分享!!!
回復(fù)

使用道具 舉報(bào)

ID:499701 發(fā)表于 2019-7-5 13:15 | 顯示全部樓層
這個(gè)技巧很實(shí)用,謝謝分享
回復(fù)

使用道具 舉報(bào)

ID:307020 發(fā)表于 2019-7-6 18:09 | 顯示全部樓層
謝謝樓主分享,模塊化管理的技巧
回復(fù)

使用道具 舉報(bào)

ID:689425 發(fā)表于 2023-8-13 10:44 | 顯示全部樓層
好好好,模塊化管理方便整潔,可以減少很多工作量
回復(fù)

使用道具 舉報(bào)

ID:433219 發(fā)表于 2023-8-16 09:45 | 顯示全部樓層
mcu一般都是一人全包,,,涉及到多人協(xié)作寫(xiě)程序的,互相調(diào)用的就繁瑣了
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 一区二区三区在线免费观看 | 日本爱爱| 午夜精品一区 | 精品久久精品 | 久草新在线 | 日韩91在线| 国产精品国产三级国产aⅴ无密码 | 久久伊人在 | 亚洲精品大全 | 97色在线视频 | 久久婷婷色 | 亚洲成人免费视频在线 | 中文字幕免费 | 国产伦精品一区二区三区精品视频 | 国产羞羞视频在线观看 | 欧美一区2区三区4区公司二百 | 久久久久国产成人精品亚洲午夜 | 欧美成人精品 | 国产免费一区二区三区网站免费 | 欧美电影免费网站 | 国产夜恋视频在线观看 | 拍拍无遮挡人做人爱视频免费观看 | 日韩视频成人 | 亚洲精品91 | 欧美久久久久久久久中文字幕 | 一级毛片在线播放 | 日韩有码在线播放 | 欧美高清视频一区 | 国内自拍视频在线观看 | 91精品国产91综合久久蜜臀 | 色性av| 久久久久久久久久一区 | 两性午夜视频 | 亚洲综合久久久 | 日韩久久综合 | 国产 欧美 日韩 一区 | 国产www.| 亚洲精品久久久久久一区二区 | 黄色毛片在线播放 | 欧美一区二区三区在线观看 | 91精品欧美久久久久久久 |