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

專注電子技術(shù)學(xué)習(xí)與研究
當(dāng)前位置:單片機(jī)教程網(wǎng) >> MCU設(shè)計(jì)實(shí)例 >> 瀏覽文章

MAX5307程序調(diào)試中遇到的時(shí)鐘問(wèn)題

作者:佚名   來(lái)源:本站原創(chuàng)   點(diǎn)擊數(shù):  更新時(shí)間:2010年05月21日   【字體:

調(diào)試了好久終于調(diào)試出來(lái)了啊,原來(lái)罪魁禍?zhǔn)拙谷皇且粋(gè)時(shí)鐘的問(wèn)題:

DAC0(uchar t)
 { uchar i;
   uint x,y;//控制轉(zhuǎn)換的命令字節(jié)
   uint p_up;
   p_up=0xffff;
   EN138=1;
   A138=0;
   B138=0;
   //DA_CLK=1;//由于在下降沿輸出,故先拉高
   delay(5);
   for(i=0;i<16;i++)
   {
   DA_DIN=(bit)(p_up&0x8000);//取最高位傳送
   DA_CLK=1;
   delay(10); 
   DA_CLK=0;
   delay(10);
   p_up<<=1;
   }
   EN138=1;//將5307的CS端拉高,準(zhǔn)備下次的數(shù)據(jù)輸入.
   A138=1;
   B138=1;
   delay(10);
//********************************************以上將全部DA使能輸出
   EN138=1;
   A138=0;
   B138=0;
   //DA_CLK=1;//由于在下降沿輸出,故先拉高
   delay(5);
   for(i=0;i<16;i++)
   {
   DA_DIN=(bit)(dandc&0x8000);//取最高位傳送
   DA_CLK=1;
   delay(10); 
   DA_CLK=0;
   delay(10);
   dandc<<=1;
   }
   EN138=1;//將5307的CS端拉高,準(zhǔn)備下次的數(shù)據(jù)輸入.
   A138=1;
   B138=1;
   delay(5);
 
   //**********************以上部分僅僅完成了數(shù)據(jù)的傳送
 x=0x0010;
 x=x<<t;//用1選中要進(jìn)行轉(zhuǎn)換的通道.
 y=0xe000;//啟動(dòng)轉(zhuǎn)換的命令
 y=y|x;
 EN138=1;
 A138=0;
    B138=0;
    //DA_CLK=1;//由于在下降沿輸出,故先拉高
 delay(10);
   for(i=0;i<16;i++)
   {
   DA_DIN=(bit)(y&0x8000);//取最高位傳送
   DA_CLK=1;
   delay(10); 
   DA_CLK=0;
   delay(10);
   y<<=1;
   }
   delay(10);
   EN138=1;
   A138=1;
   B138=1; 
 }   以上為正確的程序,嘔心瀝血啊。有看的就要回貼啊,哪怕是罵兩句。

下面把錯(cuò)誤的程序也貼出來(lái),以供參考學(xué)習(xí):

 DAC0(uchar t)
 { uchar i;
   uint x,y;//控制轉(zhuǎn)換的命令字節(jié)
   uint p_up;
   p_up=0xffff;
   EN138=1;
   A138=0;
   B138=0;
   DA_CLK=1;//由于在下降沿輸出,故先拉高
   delay(5);
   for(i=0;i<16;i++)
   {
   DA_DIN=(bit)(p_up&0x8000);//取最高位傳送
   DA_CLK=0;
   delay(10); 
   DA_CLK=1;
   delay(10);
   p_up<<=1;
   }
   EN138=1;//將5307的CS端拉高,準(zhǔn)備下次的數(shù)據(jù)輸入.
   A138=1;
   B138=1;
   delay(10);
//********************************************以上將全部DA使能輸出
   EN138=1;
   A138=0;
   B138=0;
   DA_CLK=1;//由于在下降沿輸出,故先拉高
   delay(5);
   for(i=0;i<16;i++)
   {
   DA_DIN=(bit)(dandc&0x8000);//取最高位傳送
   DA_CLK=0;
   delay(10); 
   DA_CLK=1;
   delay(10);
   dandc<<=1;
   }
   EN138=1;//將5307的CS端拉高,準(zhǔn)備下次的數(shù)據(jù)輸入.
   A138=1;
   B138=1;
   delay(5);
 
   //**********************以上部分僅僅完成了數(shù)據(jù)的傳送
 x=0x0010;
 x=x<<t;//用1選中要進(jìn)行轉(zhuǎn)換的通道.
 y=0xe000;//啟動(dòng)轉(zhuǎn)換的命令
 y=y|x;
 EN138=1;
 A138=0;
    B138=0;
    DA_CLK=1;//由于在下降沿輸出,故先拉高
 delay(10);
   for(i=0;i<16;i++)
   {
   DA_DIN=(bit)(y&0x8000);//取最高位傳送
   DA_CLK=0;
   delay(10); 
   DA_CLK=1;
   delay(10);
   y<<=1;
   }
   delay(10);
   EN138=1;
   A138=1;
   B138=1; 
 }  

兩個(gè)程序中綠色的部分為不一樣的地方,其實(shí)也就是時(shí)鐘的下降沿的時(shí)間有沒(méi)有延時(shí)的問(wèn)題,由于DA轉(zhuǎn)換和單片機(jī)部分用了光藕隔離所以才會(huì)出現(xiàn)這種需要延時(shí)的情況,如果沒(méi)有隔離的話,完全可以不用延時(shí),因?yàn)镸AX5307的最高可以達(dá)到15MHZ的轉(zhuǎn)換和數(shù)字傳輸頻率。

轉(zhuǎn)自:http://blog.ednchina.com/wangchangyun/77054/message.aspx 

關(guān)閉窗口

相關(guān)文章

主站蜘蛛池模板: 欧美激情99 | 蜜桃视频成人 | 久久久精品网 | 在线观看成人免费视频 | 久久精品欧美一区二区三区不卡 | 亚洲另类春色偷拍在线观看 | 日韩成人一区 | 成人免费视频7777777 | 久久综合久色欧美综合狠狠 | 人人爽人人草 | 一本一道久久a久久精品蜜桃 | 亚洲高清一区二区三区 | 国产 欧美 日韩 一区 | 国产免费一区二区三区免费视频 | 日本高清视频在线播放 | 老外黄色一级片 | 丁香六月激情 | 日韩精品福利 | 欧美日韩精品一区二区三区蜜桃 | 国产电影一区二区三区爱妃记 | 久久国产精品久久 | 国产精品久久久久久久久久久久冷 | 超碰成人免费 | 久久99精品久久久久久 | 午夜免费成人 | 国产一区二区三区在线 | 欧美一级α片 | 国产欧美精品一区二区三区 | 久久婷婷国产香蕉 | 成人午夜视频在线观看 | 亚洲精品一区在线 | 欧美成人一区二区 | 免费永久av | 成人免费视频网站在线看 | 欧美日韩网站 | 国产yw851.c免费观看网站 | 国产特级毛片aaaaaa喷潮 | 亚洲电影一区二区三区 | 国产在线精品一区二区 | 亚洲免费观看视频网站 | 日本成人在线免费视频 |