中文字幕无码不卡一区二区三区_少妇被又大又粗又爽毛片久久黑人_91精品国产在热久久无毒不卡_久久久久久亚洲综合网站

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

專(zhuān)注差異化嵌入式產(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ú)限潛能!

新品推廣

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

新聞中心

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

PIC單片機(jī)程序設(shè)計(jì)的基本格式

更新時(shí)間: 2019-03-21
閱讀量:2693

推出兼容PIC單片機(jī)的代理商為您介紹PIC單片機(jī)程序設(shè)計(jì)的基本格式,為了快速掌握PIC單片機(jī)源程序的基本結(jié)構(gòu),這里給出一個(gè)典型的程序結(jié)構(gòu)框架。建立源程序時(shí)首先用偽指令TITLE提供程序的標(biāo)題,接著給出整個(gè)程序的總說(shuō)明,并用列表偽指令LIST指定所用單片機(jī)型號(hào)和文件輸出格式,再利用INCLUDE偽指令讀入MPASM中提供的定義文件如《P16F84INC》,然后對(duì)片內(nèi)常用資源進(jìn)行定義,再給出一般程序的基本結(jié)構(gòu)框架?,F(xiàn)舉例如下。

  TITLE“This is……”;程序標(biāo)題
 ??;程序說(shuō)明
  LIST P=16F84,F(xiàn)=1NHX8M
 ?。?br/>  include  

 ?。璫onfig_RC_Qsc?。WDT_0FF…
 ??;資源定義和變量定義
  STATUS EQU 03
  FSR      EQU 04
  PORTA  EQU 05
  PORTB  EQU 06
  J          EQU 01F
  K         EQU 01E
  ;…………………
      ORG 0000    ;
      goto  MAIN  ;跳過(guò)中斷矢量
      ORG 0004  
      goto  INTSRV;子程序入口地址
 ?。?amp;hellip;…………………………………
  MAIN      ?。粡?005H開(kāi)始放主程序
      call Initports  ;端口初始化
      call InitTimers;定時(shí)器初始化
       …
  INTSRV   …      ;中斷服務(wù)程序區(qū)
  SVBRTH…      ;子程序區(qū)
    END       ;程序結(jié)束符
  當(dāng)然,在編寫(xiě)程序時(shí)可根據(jù)實(shí)際情況加以調(diào)整。下面是一份實(shí)際程序清單,要求將數(shù)據(jù)88H寫(xiě)入PIC16F84單片機(jī)內(nèi)部EEPROM的20H單元,而后再?gòu)?0H單元將其讀出。
  LIST P=16F84,F(xiàn)=INHX8M
  ;……………………………
  STATUS EQU  03 ??;定義寄存器
  EEDATA   EQU  08
  EEADR     EQU  09
  INTCON     EQU  0BH
  EECON1    EQU  88H
  EECON2    EQU  89H
 ?。?amp;hellip;………………………
  RD      EQU  0     ;定義位
  WR        EQU  1
  RP0    EQU  5
  GIE       EQU  7
 ?。?amp;hellip;………………………
        ORG  0
        GOTO   WRSTART
 ?。?amp;hellip;…………………………
       ORG  10H
  WRSTART             ;寫(xiě)入操作開(kāi)始
       CLRW          ;清W,使W=0
       BCF      STATUS,RP0 ;選BANK0
       MOVLW 20H
       MOVWF EEADR   ;地址→EEADR
       MOVLW 88H
       MOVWF EEDATA ?。粚?xiě)入數(shù)據(jù)→
                 ;EEDATA
       BSF      STATUS,RP0 ;選BANK1
       BSF      EECON1,2    ;寫(xiě)操作使能允許
       BCF      INTCON,GIE ;關(guān)閉所有的中斷
       MOVLW 0X55
       MOVWF EECON2 ?。?5H→EECON2
       MOVLW 0XAA
       MOVWF EECON2    ;AAH→EECON2
      BSF      EECON1,WR ;啟動(dòng)寫(xiě)操作
       BSF      INTCON,GIE ;恢復(fù)開(kāi)中斷
  RDSTART           ;讀出操作開(kāi)始
       BCF      STATUS,RP0
       MOVLW 20H
       MOVWF EEADR   ;地址→EEADR
       BSF       STATUS,RP0
       BSF       EECON1,RD ;啟動(dòng)讀操作
       BCF       STATUS,RP0
       MOVF    EEDATA,W   ;將EEPROM
                  ;數(shù)據(jù)讀入W
  END

莱西市| 孝昌县| 关岭| 黄陵县| 六盘水市| 称多县| 东兰县| 通辽市| 枝江市| 称多县| 迁西县| 双鸭山市| 扶余县| 凤翔县| 莱州市| 武宣县| 乌鲁木齐市| 西平县| 深圳市| 明水县| 五指山市| 通城县| 高青县| 金门县| 全椒县| 敦煌市| 乌苏市| 周至县| 成安县| 炉霍县| 四川省| 深圳市| 济南市| 泸溪县| 北票市| 阿鲁科尔沁旗| 和政县| 芮城县| 陇川县| 织金县| 广河县|