色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

EM78P153范例程序

算法&編程學(xué)院 ? 來源:網(wǎng)絡(luò)整理 ? 2018-02-15 04:19 ? 次閱讀

;芯片為EM78P153

;P64,P65接晶振,振蕩模式為4MHz晶振

;看門狗關(guān),指令周期為2個CLOCK,P63為復(fù)位腳

;*******************IO口的定義*********************

PORT6 EQU 0X06

IOC60 EQU 0X06

;**************特殊功能寄存器的定義******************

TCCEQU 0X01

PC EQU 0X02

PSW EQU 0X03

IOCD0 EQU 0X0D

IOCE0 EQU 0X0E

IOCF0 EQU 0X0F

RF EQU 0X0F

;***************用戶自定義的寄存器*******************

COUNTER EQU 0X10

CODE1 EQU 0X11

CODE2 EQU 0X12

CODE3 EQU 0X13

CODE4 EQU 0X14

LP_CNT0 EQU 0X15

LP_CNT1 EQU 0X16

TEMP EQU 0X17

TEMPCODE EQU 0X18

REPEAT_COUNTER EQU 0X19

SEND_DATA EQU 0X1A

USER_CODE EQU 0X1B

FLAG EQU 0X1C

;*******************FLAG位定義**********************

C EQU 0

Z EQU 2

TCIF EQU 0

LEAD EQU 0

REPEAT EQU 1

INPUT EQU 1

OUTPUT EQU 0

ORG 0X000

NOP

NOP

NOP

NOP

JMP 0X50

;********************表格轉(zhuǎn)換子程序程序******************

TABLE_CONVER:

CLR TEMP

TABLE_CONVER_1:

MOV A,TEMP

CALL TABLE_CONVERSION_IN

BC PSW,Z

XOR A,CODE3

JBC PSW,Z

JMP EXIT_5

INC TEMP

JMP TABLE_CONVER_1

EXIT_5:

CALL TABLE_CONVERSION_OUT

RET

;**********************表格轉(zhuǎn)換程序IN*********************

TABLE_CONVERSION_IN:

ADD PC,A

RETL 0XD0 ;KEY_1

RETL 0X58 ;KEY_2

RETL 0XD8 ;KEY_3

RETL 0X90 ;KEY_4

RETL 0X18 ;KEY_5

RETL 0X98 ;KEY_6

RETL 0XE0 ;KEY_7

RETL 0X68 ;KEY_8

RETL 0XE8 ;KEY_9

RETL 0X28 ;KEY_0

RETL 0X20 ;KEY_3D

RETL 0XA0 ;KEY_MUTE

RETL 0X40 ;KEY_VOCAL

RETL 0XE2 ;KEY_VOL+

RETL 0XA2 ;KEY_VOL-

RETL 0X52 ;KEY_TUNE FWD

RETL 0X22 ;KEY_TUNE REV

RETL 0X12 ;KEY_STOP

RETL 0X80 ;KEY_

RETL 0X02 ;KEY_OK

RETL 0XF0 ;KEY_TUNER

RETL 0X78 ;KEY_AM/FM

RETL 0XF8 ;KEY_SAVE

RETL 0X50 ;KEY_AUDIO

;**********************表格轉(zhuǎn)換程序OUT*********************

TABLE_CONVERSION_OUT:

MOV A,TEMP

ADD PC,A

RETL 0X35 ;KEY_1

RETL 0X2D ;KEY_2

RETL 0X25 ;KEY_3

RETL 0X1D ;KEY_4

RETL 0X34 ;KEY_5

RETL 0X2C ;KEY_6

RETL 0X24 ;KEY_7

RETL 0X1C ;KEY_8

RETL 0X33 ;KEY_9

RETL 0X2B ;KEY_0

RETL 0X10 ;KEY_3D

RETL 0X18 ;KEY_MUTE

RETL 0X11 ;KEY_VOCAL

RETL 0X16 ;KEY_VOL+

RETL 0X15 ;KEY_VOL-

RETL 0X28 ;KEY_TUNE FWD

RETL 0X2A ;KEY_TUNE REV

RETL 0X22 ;KEY_STOP

RETL 0X31 ;KEY_

RETL 0X29 ;KEY_OK

RETL 0X2E ;KEY_TUNER

RETL 0X20 ;KEY_AUX-1

RETL 0X23 ;KEY_AUX-2

RETL 0X17 ;KEY_DVD

ORG 0X050

MAIN:

;*********************初始化寄存器**********************

MOV A,@0B00000000

IOW IOCE0

MOV A,@0B11111101

IOW IOCD0

MOV A,@0B00000010

IOW IOC60

MOV A,@0B00000001

MOV PORT6,A

MOV A,@0B00000001

IOW IOCF0

CLR FLAG

CLR TEMPCODE

CLR COUNTER

CLR CODE1

CLR CODE2

CLR CODE3

CLR CODE4

MOV A,@0B10010000

MOV USER_CODE,A

;*********************掃描引導(dǎo)碼**********************

SCAN_LEAD_CODE:

JBC PORT6,INPUT

JMP SCAN_LEAD_CODE

CLR FLAG

CLR REPEAT_COUNTER

CLR TEMPCODE

CALL JUDGE_START_CODE

JBS FLAG,LEAD

JMP SCAN_LEAD_CODE

;*********************接收數(shù)據(jù)**********************

RECEIVE_DATA_PROCEE:

CLR TEMPCODE

CALL RECEIVE_DATA

MOV A,TEMPCODE

MOV CODE1,A

MOV A,@0 ;判斷用戶碼是否是00

BC PSW,Z

XOR A,CODE1

JBS PSW,Z

JMP SCAN_LEAD_CODE

CLR TEMPCODE

CALL RECEIVE_DATA

MOV A,TEMPCODE

MOV CODE2,A

MOV A,@0XFF ;判斷用戶碼是否是FF

BC PSW,Z

XOR A,CODE2

JBS PSW,Z

JMP SCAN_LEAD_CODE

CLR TEMPCODE

CALL RECEIVE_DATA

MOV A,TEMPCODE

MOV CODE3,A

CLR TEMPCODE

CALL RECEIVE_DATA

MOV A,TEMPCODE

MOV CODE4,A

CLR FLAG

;*********************發(fā)送數(shù)據(jù)**********************

SEND_DATA_PROCEE:

JBS USER_CODE,6 ;ST碼的次高位反相

JMP COM_1 ;=0

JMP COM_2 ;=1

COM_1:

BS USER_CODE,6

JMP VVV

COM_2:

BC USER_CODE,6

JMP VVV

VVV:

CALL TABLE_CONVER ;調(diào)用碼表轉(zhuǎn)換子程序

MOV CODE3,A

REP:

CALL TRANSMIT_DATA

BS PORT6,OUTPUT

CALL JUDGE_REPEAT_CODE ;掃描引導(dǎo)碼是否在重復(fù)?

JBS FLAG,LEAD

JMP SCAN_LEAD_CODE

JBC FLAG,REPEAT

JMP REP ;引導(dǎo)碼是重復(fù),繼續(xù)掃描

JMP RECEIVE_DATA_PROCEE ;引導(dǎo)碼不重復(fù),去接收新數(shù)據(jù)

;****************引導(dǎo)碼的檢測子程序*****************

JUDGE_START_CODE:

CLR COUNTER ;清計數(shù)器

JUDGE_START_CODE_0:

JBC PORT6,INPUT

JMP NO_HIGH

CALL DELAY0.5MS

JBC PORT6,INPUT

JMP NO_HIGH

INC COUNTER

JMP JUDGE_START_CODE_0

NO_HIGH:

MOV A,COUNTER

BC PSW,C

SUB A,@20 ;20-A

JBS PSW,C

JMP EXIT_0 ;C=1,COUNTER>20

MOV A,COUNTER

BC PSW,C

SUB A,@16 ;16-A

JBC PSW,C

JMP EXIT_0 ;C=0,COUNTER250

JBC PORT6,INPUT

JMP CONTINUE_2

MOV A,TCC

MOV TEMP,A

BC PSW,C

SUB A,@60;142

JBC PSW,C

JMP X1 ;C=1,TCC60

X1:

BC TEMPCODE,0

JMP EXIT_1

X2:

BS TEMPCODE,0

JMP EXIT_1

EXIT_1:

DJZ COUNTER

JMP HH

MOV A,@0B00100000

CONTW ;停止記數(shù)

RET

HH:

BC PSW,C

RLC TEMPCODE

JMP CONTINUE_1

;****************發(fā)送數(shù)據(jù)子程序**********************

TRANSMIT_DATA:

MOV A,@4

MOV COUNTER,A

MOV A,USER_CODE ;@0B10010000 ;發(fā)送ST的用戶碼

MOV SEND_DATA,A

CYCLE_1:

JBS SEND_DATA,7

JMP SEND_P_0

JMP SEND_P_1

SEND_P_1:

CALL SEND_CODE_1

JMP EXIT_3

SEND_P_0:

CALL SEND_CODE_0

JMP EXIT_3

EXIT_3:

RLC SEND_DATA

DJZ COUNTER

JMP CYCLE_1

MOV A,@8

MOV COUNTER,A

MOV A,CODE3

MOV SEND_DATA,A

RLC SEND_DATA

CYCLE_2:

JBS SEND_DATA,7

JMP SEND_Q_0

JMP SEND_Q_1

SEND_Q_1:

CALL SEND_CODE_1

JMP EXIT_4

SEND_Q_0:

CALL SEND_CODE_0

JMP EXIT_4

EXIT_4:

RLC SEND_DATA

DJZ COUNTER

JMP CYCLE_2

RET

;***************發(fā)送數(shù)據(jù)"1"子程序********************

SEND_CODE_1:

MOV A,@0B00100000

CONTW ;停止記數(shù)

MOV A,@0B00000001 ;允許TCC中斷

IOW IOCF0

MOV A,@35 ;引導(dǎo)脈沖的預(yù)置值

MOV TCC,A

MOV A,@0B00000001 ;選擇預(yù)分頻比為1:4

CONTW

BC PORT6,OUTPUT

WAIT_1:

JBS RF,TCIF

JMP WAIT_1

MOV A,@0B00100000

CONTW ;停止記數(shù)

BC RF,TCIF

MOV A,@32 ;代碼"1"的預(yù)置值

MOV TCC,A

MOV A,@0B00000101 ;選擇預(yù)分頻比為1:64

CONTW

BS PORT6,OUTPUT

WAIT_2:

JBS RF,TCIF

JMP WAIT_2

BC RF,TCIF

MOV A,@0B00100000

CONTW ;停止記數(shù)

RET

;***************發(fā)送數(shù)據(jù)"0"子程序********************

SEND_CODE_0:

MOV A,@0B00100000

CONTW ;停止記數(shù)

MOV A,@0B00000001 ;允許TCC中斷

IOW IOCF0

MOV A,@35 ;引導(dǎo)脈沖的預(yù)置值

MOV TCC,A

MOV A,@0B00000001 ;選擇預(yù)分頻比為1:4

CONTW

BC PORT6,OUTPUT

WAIT_3:

JBS RF,TCIF

JMP WAIT_3

MOV A,@0B00100000

CONTW ;停止記數(shù)

BC RF,TCIF

MOV A,@114 ;代碼"0"的預(yù)置值

MOV TCC,A

MOV A,@0B00000101 ;選擇預(yù)分頻比為1:64

CONTW

BS PORT6,OUTPUT

WAIT_4:

JBS RF,TCIF

JMP WAIT_4

NOP

BC RF,TCIF

MOV A,@0B00100000

CONTW ;停止記數(shù)

RET

;****************重復(fù)碼的檢測子程序******************

JUDGE_REPEAT_CODE:

CLR COUNTER ;清計數(shù)器

CLR FLAG

JUDGE_REPEAT_CODE_0:

JBC PORT6,INPUT

JMP JUDGE_REPEAT_CODE_0

SS:

JBC PORT6,INPUT

JMP JUDGE_REPEAT_CODE_1

CALL DELAY0.5MS

JBC PORT6,INPUT

JMP JUDGE_REPEAT_CODE_1

INC COUNTER

JMP SS

JUDGE_REPEAT_CODE_1:

MOV A,COUNTER

BC PSW,C

SUB A,@20 ;20-A

JBS PSW,C

JMP EXIT_2 ;C=1,COUNTER>20

MOV A,COUNTER

BC PSW,C

SUB A,@16 ;16-A

JBC PSW,C

JMP EXIT_2 ;C=0,COUNTER7

JMP YES_REPEAT ;C=1,COUNTER

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
收藏 人收藏

    評論

    相關(guān)推薦

    兼容em78p153,sn2501,pic12c508芯片

      兼容em78p153,sn2501,pic12c508芯片,性價比優(yōu) 張小姐:***  QQ:416455590 (技術(shù)交流)我司芯片完全
    發(fā)表于 05-14 17:11

    兼容em78p153,sn2501,pic12c508芯片

      兼容em78p153,sn2501,pic12c508芯片,性價比優(yōu) 張小姐:***  QQ:1455691267 (技術(shù)交流)我司芯片完全
    發(fā)表于 06-01 10:13

    [原創(chuàng)]兼容em78p153,sn2501,pic12c508芯片

      兼容em78p153,sn2501,pic12c508芯片,性價比優(yōu) 張小姐:***  QQ:1455691267 (技術(shù)交流)我司芯片完全
    發(fā)表于 06-14 11:34

    專業(yè)代理義隆單片機(jī)EM78P156ELMJ

    :EM78P156NPJ18SOP 300MIL:EM78P156NMJ義隆EM78P系列型號如下:EM78P153SNJ,EM78P153
    發(fā)表于 08-17 16:48

    求助:EM78P153SN的I2S原程序的編寫

    我現(xiàn)有項目是A7121與SSS1623用I2S傳送數(shù)據(jù),以EM78P153SN控制.求其原程序.有誠意者聯(lián)系;QQ:1687952361.
    發(fā)表于 12-16 21:47

    求助:EM78P153的代碼選項寄存器word0、word1、word2怎么賦值

    如題,EM78P153提供了三個代碼選項寄存器,datasheet里面又說在執(zhí)行程序時不能存取,那怎么賦值呢?這是位配置?寫了個延時函數(shù) void delay(unsigned int z),調(diào)用
    發(fā)表于 12-12 16:46

    義隆單片機(jī)em78P153K

    求義隆單片機(jī)em78P153K紅外解碼程序
    發(fā)表于 05-04 11:22

    EM78P173N義隆單片機(jī)MCU規(guī)格書

    EM78P173N是***義隆單片機(jī)MCU在153上的升級款。
    發(fā)表于 04-09 11:51

    EM78P458/EM78P459中文資料,數(shù)據(jù)手冊

    EM78P458 為20 腳封裝,EM78P459 為24 腳封裝,封裝形式:SOP 和DIP 具有電壓檢測器,檢測范圍2.0V.EM78P458 和EM78P459是采用高速CMOS
    發(fā)表于 11-20 01:13 ?209次下載
    <b class='flag-5'>EM78P</b>458/<b class='flag-5'>EM78P</b>459中文資料,數(shù)據(jù)手冊

    em78p458 pdf

    EM78P458 和EM78P459是采用高速CMOS 工藝制造的8 位單片機(jī)。其內(nèi)部有4K*13 位一次性ROM(OTPROM)。因此,用戶可以方便地改進(jìn)完善程序程序代碼可用EMC
    發(fā)表于 11-20 01:18 ?13次下載

    EM78P153,中文資料,pdf datasheet(高速

    EM78P153是采用高速CMOS工藝制造的8位單片機(jī)。
    發(fā)表于 07-24 14:53 ?150次下載

    EM78P153S,中文資料,pdf datasheet(低

    EM78P153S是采用低耗高速CMOS工藝制造的8位單片機(jī),它內(nèi)部包含一個1024*13-bit的一次性可編程只讀電存儲器(OTP-ROM)。有15位選項位可滿足用戶要求,其中的保護(hù)位可用來防止程序被讀出
    發(fā)表于 07-24 14:55 ?244次下載

    EM78P153B 8位OIP ROM微控制器產(chǎn)品規(guī)格書

    EM78P153B是采用低功耗高速CMOS工藝設(shè)計開發(fā)的8位微控制器。它的內(nèi)部有一個1024x13位一次性可編程只讀存儲器(OTP-ROM)。它提供三個保護(hù)位用于防止用戶在OTP-ROM中的程序被盜
    發(fā)表于 03-05 16:34 ?64次下載

    EM78P153系列單片機(jī)的詳細(xì)資料概述

    本文檔的主要內(nèi)容詳細(xì)介紹的是EM78P153系列單片機(jī)的詳細(xì)資料概述包括了:簡介,存儲結(jié)構(gòu)(ROM劃分,RAM劃分),IO系統(tǒng),復(fù)位,休眠狀態(tài)和喚醒,中斷功能,時鐘分頻系統(tǒng)
    發(fā)表于 08-22 17:30 ?27次下載
    <b class='flag-5'>EM78P153</b>系列單片機(jī)的詳細(xì)資料概述

    EM78P447中文數(shù)據(jù)手冊

    EM78P447中文數(shù)據(jù)手冊分享。
    發(fā)表于 04-13 11:09 ?15次下載
    主站蜘蛛池模板: 亚洲精品成人a在线观看| 东莞桑拿美女| 色狠狠xx| 老头扒开粉缝亲我下面| 国产亚洲精品福利视频| 嘟嘟嘟WWW免费高清在线中文| qvod在线观看| 99视频福利| 国产精品一区二区人妻无码 | 苍井空a 集在线观看网站| 18禁三级黄| 亚洲一区二区三不卡高清| 一区精品在线| 哇嘎在线精品视频在线观看 | 午夜精品久久久久久99热蜜桃| 日本湿姝在线观看| 日韩欧美视频一区| 神马老子影院午夜伦| 色色色999| 上原结衣快播| 午夜影视免费| 伊人在线视频| 中文字幕精品视频在线| 99福利影院| 冈本视频黄页正版| 99re久久热在线视频| 99久久热视频只有精品| 成人国产精品免费网站| 成人免费视频在线观看| 一个人免费完整观看日本| 性夜夜春夜夜爽AA片A| 亚洲精品国偷拍电影自产在线 | 哪里能看毛片| 欧美性视频xxxxhd| 手机在线成人精品视频网| 亚洲综合色婷婷在线影院| 91女神娇喘| 纯h超级大尺度小黄文| 国产乱人精品视频AV麻豆| 欧美xxxav| 欧美日韩视频一区二区三区|