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

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

QQ登錄

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

搜索
查看: 2026|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

[電子手表制作]第2期V1.2版

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:884042 發(fā)表于 2021-7-4 11:14 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
本帖最后由 xjx51 于 2021-7-8 08:20 編輯

我又又又來(lái)了,上次按鍵失靈的原因找到了,是我的單片機(jī)IO口設(shè)置成了高阻狀態(tài)。改成準(zhǔn)雙向模式就行了。

測(cè)試了一下時(shí)鐘芯片和改時(shí)間的功能,全部正常,OK!

下面開(kāi)始驅(qū)動(dòng)喇叭,PWM功能暫時(shí)先不做,我先做了語(yǔ)音功能,但單片機(jī)8K的容量卻給我用完了,只能單獨(dú)寫(xiě)個(gè)子程序測(cè)試了。
原本是準(zhǔn)備用NVC080C的,但是搞半天驅(qū)動(dòng)不了,只能先用老的語(yǔ)音芯片了,但是老的語(yǔ)音芯片只能說(shuō)些象棋的字,重新定制又太麻煩,只好重搞,
后來(lái)發(fā)現(xiàn)不能驅(qū)動(dòng)是因?yàn)闀r(shí)序不對(duì),搞了一晚上才搞明白,第二天開(kāi)工,我按照廠家給的時(shí)序圖重新編寫(xiě)了程序,
終于,我聽(tīng)到了世間最美妙的聲音——“將”!
哈哈哈,搞半天是時(shí)序出了問(wèn)題,后來(lái)試了下,也可以連說(shuō)了,屏幕顯示與喇叭說(shuō)話已經(jīng)可以同步了!

上程序:
  1. #include <intrins.h>
  2. #define uint unsigned int                 //宏定義變量
  3. #define uchar unsigned char                //宏定義變量
  4. sbit busy=P5^4;                                        //定義語(yǔ)音芯片忙信號(hào)輸入單片機(jī)腳
  5. sbit dat=P1^5;                                        //定義單片機(jī)輸出數(shù)據(jù)腳
  6. uchar temp1,t;
  7. uchar code table[]={0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,//語(yǔ)音信號(hào)數(shù)組
  8.                                  //       將4  將1  帥         士          象   車(chē)   馬        
  9.                                         0x08,0x09,0x0a,0x0b,0x0c,0x0d,0x0e,0x0f,
  10.                                  //  炮   兵   卒         0          1    2    3    4
  11.                                         0x10,0x11,0x12,0x13,0x14,0x15,0x16,0x17,
  12.                                  //  5    6    7    8    9    時(shí)   分  抽簽  
  13.                                         0x18,0x19,0x1a,0x1b,0x1c,0x1d,0x1e,0x1f,
  14.                                  // 開(kāi)始 加油 結(jié)束 休息 暫停 超時(shí) 退出 犯規(guī)   
  15.                                         0x20,0x21,0x22,0x23, 0x24, 0x25,0x26,0x27,
  16.                                  // 遲到 棄權(quán) 繼續(xù) 悔棋 時(shí)間到  紅   黑   方      
  17.                                          0x28,0x29,0x2a,0x2b,0x2c,0x2d,0x2e,0x2f,
  18.                                  //  勝   負(fù)   和   平   前   后   左   右
  19.                                         0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,
  20.                                  //  吃   進(jìn)   退   十   第   章   頁(yè)   節(jié)
  21.                                         0x38,0x39,0x3a,0x3b,0x3c,0x3d,0x3e,0x3f};
  22.                                  //  例   圖   屆   局   回  抽簽  名
  23. void delay_us(uint x) //
  24. {
  25.          uint a;
  26.          for(a=x;a>0;a--)
  27.          {
  28.              _nop_() ;
  29.                  _nop_() ;
  30.                  _nop_() ;
  31.                  _nop_() ;
  32.                  _nop_() ;
  33.      }
  34. }
  35. void delay_ms(uint x) //X=毫秒數(shù)*10
  36. {
  37.          uint a,b;
  38.          for(a=0;a<x;a++)
  39.          for(b=0;b<300;b++);
  40.          //for(c=0;c<25~;c++);
  41. }
  42. void NVC080C_8BITS()                                        //聲明語(yǔ)音發(fā)音子函數(shù)
  43. {
  44.         dat=0;
  45.         delay_ms(50);                        //5毫秒低電平同步頭
  46.         for(t=0;t<8;t++)
  47.         {
  48.                 if(temp1&1)                          //1010 1010
  49.                 {
  50.                     dat=1;
  51.                         delay_us(1200);          //400US
  52.                         dat=0;
  53.                         delay_us(400);        
  54.                 }
  55.                 else
  56.                 {
  57.                     dat=1;
  58.                         delay_us(400);
  59.                         dat=0;
  60.                         delay_us(1200);
  61.                 }
  62.                 temp1>>=1;
  63.         }
  64.         dat=1;
  65. }
  66. void yuyin(uchar y)
  67. {
  68.         temp1 = y;
  69.         delay_ms(1000);
  70.     NVC080C_8BITS();
  71. }
  72. void main()
  73. {
  74.    yuyin(0X19);//對(duì)應(yīng)語(yǔ)音表的“分”
  75.    while(1) ;
  76. }
  77.    
復(fù)制代碼
至此,語(yǔ)音程序已完成,下期完善鬧鐘功能!


評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 麻豆视频在线免费看 | 日韩1区2区 | 日韩精品一区二区三区中文在线 | 国产激情视频在线免费观看 | 精品国产乱码 | 国产99久久精品一区二区永久免费 | 国产日韩一区二区三免费高清 | 91精品一区二区三区久久久久久 | 精品自拍视频在线观看 | 亚洲精品区 | 国产精品一区二区三区在线 | 亚洲天堂中文字幕 | 中文在线一区二区 | 久久精品国产v日韩v亚洲 | 精品一区二区三区在线观看国产 | 综合欧美亚洲 | 超碰在线人人干 | 久久久精品一区 | 日日爱夜夜操 | 国产成人麻豆免费观看 | 一区二区三区在线免费观看 | 亚洲精品99 | 在线观看视频中文字幕 | 91视频官网| 黄色网址在线播放 | 中文字幕视频在线观看 | 国产精品激情 | 久久av网| 综合久久99 | 中文字幕在线免费观看 | 国产精品99久久久久久动医院 | 国产免费色 | 国产精品毛片无码 | 黑人巨大精品欧美一区二区免费 | 国产日韩欧美激情 | 国产精品久久久久久久久久免费看 | 国产日韩欧美在线观看 | 精品在线视频播放 | 粉嫩一区二区三区四区公司1 | 久久亚洲综合 | 亚洲国产成人av好男人在线观看 |