亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 語音1.lis

?? ISD1720芯片實現錄音,定點錄音,播放,定點播放等.
?? LIS
?? 第 1 頁 / 共 2 頁
字號:
                        .module _語音1.c
                        .area text(rom, con, rel)
 0000                   .dbfile E:\寫的程序\AVR(C)\語音1.c
 0000                   .dbfunc e spi_sent_init _spi_sent_init fV
                        .even
 0000           _spi_sent_init::
 0000                   .dbline -1
 0000                   .dbline 51
 0000           ; 
 0000           ; /****************************************************************
 0000           ;            在發送命令時的第四位是開LED指示位
 0000           ;                  當C4=1時開啟,要指示話要在每個命令中將此位置位
 0000           ;                  以下的程序都將此位置位了。
 0000           ; /*****************************************************************
 0000           ; 
 0000           ; #define PU      PU(0x11) //POWER UP 01
 0000           ; #define PD      PU(0x17) //POWER DOWN 07
 0000           ; #define EXTLCK  PU(0x5A) //是否使能外部時鐘 4A
 0000           ; 
 0000           ; #define STOP    PU(0x12) //停止   02
 0000           ; #define RESET   PU(0x13) //復位  03
 0000           ; #define FWD     PU(0x01) //下一曲 48
 0000           ; #define PLAY    PU(0x50) //播放當前曲目  40
 0000           ; #define REC     PU(0x51) //從當前地址開始錄音 41
 0000           ; 
 0000           ; #define CLR_INT  PU(0x14) //清除中斷和EOM位  04 
 0000           ; #define ERASE    PU(0x52) //擦除當前曲目 42
 0000           ; #define G_ERASE  PU(0x53) //擦除全部曲目除了提示音 43
 0000           ; 
 0000           ; #define WR_NVCFG  PU(0x56) //將APC的內容寫到NVCFG中 46
 0000           ; #define LD_NVCFG  PU(0x57) //將NVCFG的內容加載到APC中 47
 0000           ; #define CHK_MEM   PU(0x59) //檢查環形存儲結構 49
 0000           ; 
 0000           ; #define RD_STATUS  status_address(0x15) //讀取狀態寄存器,當前地址 05
 0000           ; #define DEVID      status_address(0x19) //讀取器件ID 09
 0000           ; 
 0000           ; #define RD_PLAY_PTR  status_address_pointer(0x16) //讀取狀態寄存器,當前地址和播放指針 06
 0000           ; #define RD_REC_PTR   status_address_pointer(0x18) //讀取狀態寄存器,當前地址和錄音指針 08
 0000           ; #define RD_APC       status_address_pointer(0x54) //讀取狀態寄存器,當前地址和APC寄存器 44
 0000           ; /****************************************************************************
 0000           ;     下面的程序是要用
 0000           ; unsigned char command_data(unsigned char command,unsigned int data1,unsigned int data2)
 0000           ;    該函數要實現如下功能由不同的命令實現
 0000           ;    返回的i值是狀態值
 0000           ; ***********************************************************************
 0000           ; i=command_data(0x55,data1,data2);//wr_apc1(void);將<D11:D0>的數據寫進APC寄存器,并由VOL管腳調節音量 45
 0000           ; i=command_data(0x75,data1,data2);//wr_apc2(void);將<D11:D0>的數據寫進APC寄存器,并由<D2:D0>調節音量 65
 0000           ; 
 0000           ; i=command_data(0x90,data1,data2); //set_play(void);//從<S10:S0>開始播放,直到<E10:E0>或EOM 80
 0000           ; i=command_data(0x91,data1,data2); //set_rec(void); //從<S10:S0>開始錄音,直到<E10:E0> 81
 0000           ; i=command_data(0x92,data1,data2); //set_erase(void);//擦除<S10:S0>到<E10:E0>的內容 82
 0000           ; 
 0000           ; /***********************************************************
 0000           ;                     SPI發送程序
 0000           ; *************************************************************/
 0000           ; #include <iom16v.h>
 0000           ; #include <macros.h>
 0000           ; void spi_sent_init(void)
 0000           ; { PORTB |= (1<<PB4)|(1<<PB5)|(1<<PB6)|(1<<PB7);       
 0000                   .dbline 51
 0000 88B3              in R24,0x18
 0002 806F              ori R24,240
 0004 88BB              out 0x18,R24
 0006                   .dbline 52
 0006           ;   DDRB |= (1<<DDB5)|(1<<DDB7)|(1<<DDB4);       //設置MOSI,SCK和SS為輸出 
 0006 87B3              in R24,0x17
 0008 806B              ori R24,176
 000A 87BB              out 0x17,R24
 000C                   .dbline 53
 000C           ;   SPCR = (1<<SPE)|(1<<DORD)|(1<<MSTR)|(1<<SPR1)|(1<<SPR0);//設置為主機,LSB先發送
 000C 83E7              ldi R24,115
 000E 8DB9              out 0xd,R24
 0010                   .dbline 54
 0010           ;   SPSR = 0x00;              //預分頻為128
 0010 2224              clr R2
 0012 2EB8              out 0xe,R2
 0014                   .dbline -2
 0014           L1:
 0014                   .dbline 0 ; func end
 0014 0895              ret
 0016                   .dbend
 0016                   .dbfunc e SPI _SPI fc
 0016           ;           sign -> R20
 0016           ;           Data -> R16,R17
                        .even
 0016           _SPI::
 0016 0E940000          xcall push_gset1
 001A                   .dbline -1
 001A                   .dbline 58
 001A           ; }
 001A           ; 
 001A           ; unsigned char SPI(unsigned int Data)
 001A           ; { 
 001A                   .dbline 60
 001A           ;   unsigned char sign;
 001A           ;   PORTB &=~ (1<<PB4);            //強制接收方進入從模式
 001A C498              cbi 0x18,4
 001C                   .dbline 61
 001C           ;   SPCR |= (1<<MSTR);             // MSTR有時會被清零,這里強制進入主機模式
 001C 6C9A              sbi 0xd,4
 001E                   .dbline 62
 001E           ;   SPDR = Data;              //啟動數據傳輸 
 001E 0FB9              out 0xf,R16
 0020           L3:
 0020                   .dbline 63
 0020           L4:
 0020                   .dbline 63
 0020           ;   while(!(SPSR&(1<<SPIF)));      //等待傳輸結束 
 0020 779B              sbis 0xe,7
 0022 FECF              rjmp L3
 0024                   .dbline 64
 0024           ;   PORTB |= (1<<PB4);
 0024 C49A              sbi 0x18,4
 0026                   .dbline 65
 0026           ;   sign=SPSR;
 0026 4EB1              in R20,0xe
 0028                   .dbline 66
 0028           ;   sign=SPDR;
 0028 4FB1              in R20,0xf
 002A                   .dbline 67
 002A           ;   return sign;            
 002A 042F              mov R16,R20
 002C                   .dbline -2
 002C           L2:
 002C 0E940000          xcall pop_gset1
 0030                   .dbline 0 ; func end
 0030 0895              ret
 0032                   .dbsym r sign 20 c
 0032                   .dbsym r Data 16 i
 0032                   .dbend
 0032                   .dbfunc e PU _PU fc
 0032           ;              i -> R20
 0032           ;           data -> R22
                        .even
 0032           _PU::
 0032 0E940000          xcall push_gset2
 0036 602F              mov R22,R16
 0038                   .dbline -1
 0038                   .dbline 73
 0038           ; }
 0038           ; /***********************************************************
 0038           ;                     命令程序
 0038           ; *************************************************************/
 0038           ; unsigned char PU(unsigned char data)
 0038           ; {
 0038           L7:
 0038                   .dbline 76
 0038           ;    unsigned char i;
 0038           ;    do
 0038           ;    {
 0038                   .dbline 77
 0038           ;      i=SPI(data);//發送命令
 0038 062F              mov R16,R22
 003A 1127              clr R17
 003C ECDF              xcall _SPI
 003E 402F              mov R20,R16
 0040                   .dbline 78
 0040           ;    }
 0040           L8:
 0040                   .dbline 79
 0040           ;    while((i=SPI(0x00))&0x01);//檢測發送的命令是否接收了上一個命令
 0040 0027              clr R16
 0042 1127              clr R17
 0044 E8DF              xcall _SPI
 0046 402F              mov R20,R16
 0048 40FD              sbrc R20,0
 004A F6CF              rjmp L7
 004C                   .dbline 80
 004C           ;    return i;
 004C                   .dbline -2
 004C           L6:
 004C 0E940000          xcall pop_gset2
 0050                   .dbline 0 ; func end
 0050 0895              ret
 0052                   .dbsym r i 20 c
 0052                   .dbsym r data 22 c
 0052                   .dbend
 0052                   .dbfunc e status_address _status_address fi
 0052           ;              k -> R20,R21
 0052           ;              i -> R22
 0052           ;           data -> R10
                        .even
 0052           _status_address::
 0052 0E940000          xcall push_gset3
 0056 A02E              mov R10,R16
 0058                   .dbline -1
 0058                   .dbline 84
 0058           ; }
 0058           ; //*************************************************************
 0058           ; unsigned int status_address(unsigned char data)//讀取狀態寄存器,當前地址
 0058           ; {
 0058           L11:
 0058                   .dbline 88
 0058           ;     unsigned char i;
 0058           ;       unsigned int k;
 0058           ;    do
 0058           ;    {
 0058                   .dbline 89
 0058           ;      i=SPI(data);//發送命令
 0058 0A2D              mov R16,R10
 005A 1127              clr R17
 005C DCDF              xcall _SPI
 005E 602F              mov R22,R16
 0060                   .dbline 90
 0060           ;    }
 0060           L12:
 0060                   .dbline 91
 0060           ;    while((i=SPI(0x00))&0x01);//檢測發送的命令是否接收了上一個命令
 0060 0027              clr R16
 0062 1127              clr R17
 0064 D8DF              xcall _SPI
 0066 602F              mov R22,R16
 0068 60FD              sbrc R22,0
 006A F6CF              rjmp L11
 006C                   .dbline 92
 006C           ;    k=SPI(0x00);//讀當前地址
 006C 0027              clr R16
 006E 1127              clr R17
 0070 D2DF              xcall _SPI
 0072 402F              mov R20,R16
 0074 5527              clr R21
 0076                   .dbline 93
 0076           ;    k=(8<<k)+i;//低位是狀態,高位是地址
 0076 08E0              ldi R16,8
 0078 10E0              ldi R17,0
 007A 9A01              movw R18,R20
 007C 0E940000          xcall lsl16
 0080 A801              movw R20,R16
 0082 262E              mov R2,R22
 0084 3324              clr R3
 0086 420D              add R20,R2
 0088 531D              adc R21,R3
 008A                   .dbline 94
 008A           ;    return k;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
美女网站视频久久| 欧美精品一二三| 欧美性做爰猛烈叫床潮| 精品国产在天天线2019| 亚洲区小说区图片区qvod| 美女视频黄 久久| 欧亚洲嫩模精品一区三区| 久久精品无码一区二区三区| 亚洲电影在线免费观看| 99久久亚洲一区二区三区青草| 欧美精品123区| 亚洲私人黄色宅男| 国产精品一区免费在线观看| 91精品国产综合久久久久久久 | 国产91高潮流白浆在线麻豆 | 亚洲午夜一区二区三区| 国产美女在线精品| 日韩精品资源二区在线| 日韩精品欧美精品| 欧美午夜精品理论片a级按摩| 国产精品高潮久久久久无| 韩国av一区二区三区四区| 欧美丰满一区二区免费视频| 一区二区三区欧美久久| 91一区二区三区在线播放| 欧美国产日产图区| 成人黄色在线看| 国产视频视频一区| 国产不卡视频在线观看| 国产日产欧美一区二区三区| 国产制服丝袜一区| 久久久久久久久伊人| 国产综合色精品一区二区三区| 日韩精品在线网站| 美国欧美日韩国产在线播放| 欧美大黄免费观看| 狠狠狠色丁香婷婷综合久久五月| 欧美mv日韩mv亚洲| 国产成人免费高清| 亚洲国产成人在线| 91色视频在线| 天天综合色天天| 日韩欧美一卡二卡| 国产高清久久久| 国产精品国产三级国产三级人妇| 91在线丨porny丨国产| 亚洲视频你懂的| 欧美日韩三级一区二区| 日韩精品一区第一页| 欧美大白屁股肥臀xxxxxx| 国产精品亚洲视频| 中文字幕亚洲精品在线观看| 在线中文字幕一区| 水野朝阳av一区二区三区| 日韩精品一区二区三区老鸭窝| 国产精品一区二区三区99| 国产精品高潮久久久久无| 欧美图区在线视频| 国产在线精品视频| 亚洲精品中文在线观看| 欧美精品v国产精品v日韩精品| 国产一区视频导航| 亚洲三级免费观看| 91精品久久久久久久99蜜桃| 国产不卡视频在线播放| 亚洲成人你懂的| 国产女主播在线一区二区| 色婷婷久久久综合中文字幕| 久久精品国产色蜜蜜麻豆| 国产精品久久久久久久久快鸭| 欧美性大战xxxxx久久久| 免费看精品久久片| 亚洲精品视频在线| 欧美成人欧美edvon| 91丨porny丨户外露出| 久久精工是国产品牌吗| 日韩美女久久久| 亚洲精品一区二区三区在线观看 | 国产成人啪免费观看软件| 亚洲精品美国一| 久久尤物电影视频在线观看| 欧美三日本三级三级在线播放| 国产一区二区三区美女| 亚洲国产精品久久久久秋霞影院| 久久精品亚洲一区二区三区浴池 | 欧美日韩和欧美的一区二区| 国产精品自拍一区| 视频一区二区三区中文字幕| 自拍偷拍亚洲综合| 久久精品欧美日韩精品| 欧美挠脚心视频网站| 99精品久久99久久久久| 国产精品 日产精品 欧美精品| 亚洲成a人片在线不卡一二三区| 中文字幕精品三区| 久久免费视频一区| 精品国产91久久久久久久妲己| 欧美伊人久久久久久久久影院| 成人免费av网站| 国产精品 日产精品 欧美精品| 精品一区二区三区在线播放视频| 亚洲国产视频网站| 一区二区三区欧美日| 亚洲欧美视频在线观看| 中文字幕一区二区三区在线不卡| 久久综合狠狠综合久久激情 | 欧美一区二区三区播放老司机| 日本电影欧美片| 色综合天天性综合| a美女胸又www黄视频久久| 成人深夜福利app| 成人性生交大片免费| 丁香婷婷综合激情五月色| 国产精品一区在线| 国产91丝袜在线18| 成人黄色网址在线观看| 99在线视频精品| 99久久99久久精品国产片果冻| 风间由美一区二区三区在线观看| 黄页视频在线91| 国产91高潮流白浆在线麻豆| 不卡的av在线| 欧美在线观看视频一区二区| 91久久精品一区二区| 欧美日韩另类国产亚洲欧美一级| 欧美日本韩国一区二区三区视频| 欧美日韩成人在线| 日韩精品中文字幕一区二区三区| 精品国产亚洲一区二区三区在线观看| 欧美tk—视频vk| 中文字幕一区不卡| 一区二区三区 在线观看视频| 亚洲专区一二三| 日韩黄色免费网站| 国产乱人伦偷精品视频免下载 | 亚洲制服丝袜av| 日韩av网站免费在线| 国产乱一区二区| 91理论电影在线观看| 91麻豆精品国产91久久久久| 欧美精品一区二区三区视频| 国产欧美一区二区精品忘忧草| 亚洲伦在线观看| 日本免费在线视频不卡一不卡二| 久久不见久久见免费视频1| 丰满白嫩尤物一区二区| 日本韩国一区二区| 精品国产乱子伦一区| 亚洲色图制服丝袜| 日韩av午夜在线观看| 成人性生交大片免费看中文| 欧美私人免费视频| 国产性天天综合网| 亚洲第四色夜色| 丰满少妇在线播放bd日韩电影| 欧美系列在线观看| 国产性做久久久久久| 婷婷激情综合网| 成人黄页在线观看| 精品久久五月天| 午夜欧美电影在线观看| 国产成人精品免费看| 欧美三级资源在线| 中文字幕免费不卡| 精品一区二区三区蜜桃| 在线精品视频小说1| 久久久久久免费毛片精品| 午夜伊人狠狠久久| 99九九99九九九视频精品| 久久综合狠狠综合久久综合88| 日韩中文欧美在线| 97精品电影院| 国产欧美一区二区精品性色| 蜜桃视频第一区免费观看| 欧美系列日韩一区| 国产精品不卡一区| 国产成人精品亚洲午夜麻豆| 日韩精品资源二区在线| 日韩精品亚洲专区| 欧美色综合久久| 中文字幕色av一区二区三区| 国内精品免费在线观看| 欧美狂野另类xxxxoooo| 亚洲免费观看高清在线观看| 高潮精品一区videoshd| 久久久久久久综合日本| 韩日精品视频一区| 欧美一区二区三区四区视频| 丝袜美腿高跟呻吟高潮一区| 欧美午夜精品久久久久久孕妇| 亚洲精品久久嫩草网站秘色| 成人av资源网站| 国产精品情趣视频| 国产白丝精品91爽爽久久 | 洋洋av久久久久久久一区| 91欧美一区二区| 成人免费视频在线观看| 97se亚洲国产综合在线| 中文字幕在线免费不卡| 91影视在线播放|