大香蕉大香蕉在线播放-日韩av在线一区中文字幕-日韩熟女熟妇久久精品综合-精品免费视频一区二区三区

技術(shù)熱線: 4007-888-234
設(shè)計(jì)開(kāi)發(fā)

專注差異化嵌入式產(chǎn)品解決方案 給智能產(chǎn)品定制注入靈魂給予生命

開(kāi)發(fā)工具

提供開(kāi)發(fā)工具、應(yīng)用測(cè)試 完善的開(kāi)發(fā)代碼案例庫(kù)分享

技術(shù)支持

從全面的產(chǎn)品導(dǎo)入到強(qiáng)大技術(shù)支援服務(wù) 全程貼心伴隨服務(wù),創(chuàng)造無(wú)限潛能!

新品推廣

提供新的芯片及解決方案,提升客戶產(chǎn)品競(jìng)爭(zhēng)力

新聞中心

提供最新的單片機(jī)資訊,行業(yè)消息以及公司新聞動(dòng)態(tài)

PIC單片機(jī) C編程技巧

更新時(shí)間: 2019-03-23
閱讀量:2096

十年專注單片機(jī)方案開(kāi)發(fā)的方案公司英銳恩,分享PIC單片機(jī) C編程技巧——PICC和MPLAB集成。英銳恩現(xiàn)提供服務(wù)產(chǎn)品涉及主控芯片:8位單片機(jī)、16位單片機(jī)、32位單片機(jī)及各類(lèi)運(yùn)算放大器等。

1、PICC和MPLAB集成

PICC和MPLAB集成:

PICC有自己的文本編輯器,不過(guò)是DOS風(fēng)格的,看來(lái)PICC的工程師要專業(yè)冷到酷底了...

大家大可不必用它,如果你沒(méi)什么癖好的話,你不會(huì)不用UltraEdit 吧?

1:建立你的工作目錄:

建議在C盤(pán)根目錄下建立一個(gè)以A開(kāi)頭的文件夾做為工作目錄.因?yàn)槟銜?huì)發(fā)現(xiàn)它總是在你查找文件時(shí)候第

一個(gè)跳入你眼中.

2:MPLAB調(diào)用PICC.(以MPLAB5.7版本為例子)

啟動(dòng)MPLAB.在Project-->Install Language Tool:

Language Suite----->hi-tech picc

Tool Name ---->PICC Compiler

Executable ---->c:hi-picinpicc.exe (假如你的PICC是默認(rèn)安裝的)

選Command-line

最后OK.

上面這步只需要設(shè)定一次,除非你重新安裝了MPLAB.

3:創(chuàng)建你的項(xiàng)目文件:(假如你實(shí)現(xiàn)用EDIT編輯好了一個(gè)叫AA.C的C代碼文件)

Project-->New Project-->File Name--->myc (假如我們把項(xiàng)目文件取名字叫MYC.PJT)

右邊窗口當(dāng)然要選擇中你的工作目錄.然后OK.

4:設(shè)定你的PICC工作參數(shù):

Project-->Edit Project

上面4個(gè)欄目就用默認(rèn)的,空的也就讓它空著,無(wú)所謂的.

需要修改的是:

Development Mode---->選擇你的PIC型號(hào).當(dāng)然要選擇Mplab SIM Simulator

讓你可以用軟件仿真.

Language Tool Suite--->HI-TECH PICC

上面的步驟,你可能會(huì)遇見(jiàn)多個(gè)提示條,不要管它,一路確定.

下面是PICC編譯器的選擇項(xiàng):

雙擊Project Files 窗口里面的MYC.HEX,出現(xiàn)一個(gè)選擇攔目.命令很多,大家可以看PICC文本編

輯器里面的HELP,里面有詳細(xì)說(shuō)明.

下面就推薦幾個(gè)常用也是建議用的:

Generate debug info 以及下面的2項(xiàng).

Produce assembler list file

就在它們后面打勾即可,其它的不要管,除非你有特殊要求.

5:添加你的C代碼文件:

當(dāng)進(jìn)行了前面幾步后,按Add Node 找到AA.C文件就OK了.

6:編譯C代碼:

最簡(jiǎn)單的一步:直接按下F10.

編譯完后,會(huì)出現(xiàn)各種調(diào)試信息.C代碼對(duì)應(yīng)的匯編代碼就是工作目錄里面的AA.IST,用EDIT

打開(kāi)可以看見(jiàn)詳細(xì)的對(duì)比.

7:其它,要是一切都沒(méi)問(wèn)題,那么你就可以調(diào)試和燒片了,和以往操作無(wú)異.

2、如何從匯編轉(zhuǎn)向PICC

首先要求你要有C 語(yǔ)言的基礎(chǔ)。PICC 不支持C++,這對(duì)于習(xí)慣了C++的朋友還得翻翻C 語(yǔ)言的書(shū)。C

代碼的頭文件一定要有#i nclude,它是很多頭文件的集合,C 編譯器在pic.h 中根據(jù)你的芯片自動(dòng)栽

入相應(yīng)的其它頭文件。這點(diǎn)比匯編好用。載入的頭文件中其實(shí)是聲明芯片的寄存器和一些函數(shù)。順便摘抄

一個(gè)片段:

static volatile unsigned char TMR0 @ 0x01;

static volatile unsigned char PCL @ 0x02;

static volatile unsigned char STATUS @ 0x03;

可以看出和匯編的頭文件中定義寄存器是差不多的。如下:

TMR0 EQU 0X01;

PCL EQU 0X02;

STATUS EQU 0X03;

都是把無(wú)聊的地址定義為大家公認(rèn)的名字。

一:怎么附值?

如對(duì)TMR0 附值,匯編中:

MOVLW 200;

MOVWF TMR0;

當(dāng)然得保證當(dāng)前頁(yè)面在0,不然會(huì)出錯(cuò)。

C 語(yǔ)言:

TMR0=200;//無(wú)論在任何頁(yè)面都不會(huì)出錯(cuò)。

可以看出來(lái)C 是很直接了當(dāng)?shù)?。并且最大好處是操作一個(gè)寄存器時(shí)候,不用考慮頁(yè)面的問(wèn)題。一切由

C 自動(dòng)完成。

二:怎么位操作?

匯編中的位操作是很容易的。在C 中更簡(jiǎn)單。C 的頭文件中已經(jīng)對(duì)所有可能需要位操作的寄存器的每

一位都有定義名稱:

如:PORTA 的每一個(gè)I/O 口定義為:RA0、RA1、RA2。。。RA7。OPTION 的每一位定義為:PS0、

PS1、PS2 、PSA 、T0SE、T0CS、INTEDG 、RBPU。可以對(duì)其直接進(jìn)行運(yùn)算和附值。

(文源網(wǎng)絡(luò),侵刪)

使劲操大骚逼av| 性一乱一交一免费看视频| 亚洲av一区二区在线看| 男人几把操女人嫩穴| 三级成人国产高清视频| 精品无码国产一区二区三区麻豆| 久久久久国产AV成人片| 一级特一黄大片欧美久久 | 操女人逼逼骚逼逼| 夜色成人免费观看| 99热这里只有精品97| 日本黄色美女射精| 啊啊啊啊大鸡巴操我视频| 黑人猛操日本美女| 欧美精品第一区二区三区| 久久久国产精品2020| 亚洲国产精品伦理在线看| 大胸美女被c的嗷嗷叫视频| 挺进绝色邻居的紧窄小肉| 波多野吉衣吹潮Av| 日韩 欧美 一区 二区三区| 老色鬼精品视频二区三区| 国产精品毛片无遮挡高清| 国产日女人视频在线观看| 色999日韩自偷自拍美女| 欧美日韩国产这里只有精品| 青青河边草直播免费观看| 亚洲综合网伊人中文| 中日美女毛5片一区二区三区| 美国大骚逼啊啊啊| 精品一区二区三区成人免费视频| 亚洲综合区欧美一区二区 | 午夜精品在线视频| 熟妇好大好深好爽| 男人大鸡巴操小鲜肉视频| 操女人真人大骚逼| 黑丝美女被操到高潮| 国产一区二区三区在线观| 亚洲色欲久久久久综合网| 国产情侣色综合久久有码 | 国产精品久久一区二区三区动|