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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2178|回復: 10
收起左側

請教一下關于51單片機的外部中斷

[復制鏈接]
ID:378990 發表于 2019-6-13 21:11 來自手機 | 顯示全部樓層 |閱讀模式
第一個問題:圖一中的“INT0”是什么干用的,還有它是哪來的,這個程序并沒有“sbit INT0=xxx”。
第二個問題:圖二為什么在中斷函數中要加上“EX=0  …… EX=1”?如果不加會怎么樣?

我想diy個手電,用stc15w408as,不論在什么情況,只要某個開關按下去,即當p3.2(INT0)為低電平時,進入中斷程序,使MOS管導通,led點亮。(一鍵極亮功能)。然后別的檔位用switch case。這個思路如何?剛剛開工,程序在圖三。
初學,請多指教。
mmexport1560430719497.jpg
Screenshot_2019-06-13-20-52-39-072_com.android.browser.png
mmexport1560431306269.jpg
回復

使用道具 舉報

ID:277550 發表于 2019-6-13 22:53 | 顯示全部樓層
1、INT0  在頭文件中定義了

2、就是初始化外部中斷。默認并不觸發外部中斷。

3、實現變檔,最好是使用PWM驅動。
回復

使用道具 舉報

ID:123289 發表于 2019-6-14 08:39 | 顯示全部樓層
第一個問題:圖一中的“INT0”是什么干用的,還有它是哪來的,這個程序并沒有“sbit INT0=xxx”。
答:INT0的問題需要看硬件的設計目的。sbit INT0=xxx 是有的,只是你不知道,樓上的朋友告訴你了。

第二個問題:圖二為什么在中斷函數中要加上“EX=0  …… EX=1”?如果不加會怎么樣?
答:都可以,需要根據整個系統的設計來決定,就目前你的水平,還不能理解這句話。慢慢來,功夫到了,你會應用自如的。這里提兩個問題供你思考一下:
1、當你進入中斷服務程序后,會發生其它中斷?
2、你在執行中斷服務程序時,怕不怕被其它中斷打擾?
如果怕打擾,可以將可能打擾你的那個中斷禁止,待你處理完成后,再開放它,是不是一個方法呢?
“EX=0  …… EX=1” :常用來禁止某個中斷,發生于某段程序運行的地方。
回復

使用道具 舉報

ID:339320 發表于 2019-6-14 08:39 | 顯示全部樓層
①、INT0是在<reg51.h>中定義了的,INT0上面的一杠代表:為低電平觸發。
②、看此鏈接:http://www.zg4o1577.cn/bbs/dpj-140317-1.html
回復

使用道具 舉報

ID:562525 發表于 2019-6-14 16:10 | 顯示全部樓層
典型的外部中斷0按鍵處理程序:
EX0=0  
<>延時30毫秒
<>等待按鍵松開
EX0=1

就是說先關了外部中斷0,等按鍵穩定后,再等按鍵松開
以防止按鍵按下時震動余波引起的誤觸發
你的程序沒有考慮到按鍵震動的余波,所以會多次觸發外部中斷0。
但是這個半成品程序的外部中斷0內容僅僅是不斷將LED設置為點亮的狀態,即使多次觸發也不會影響,所以目前看不出來什么;如果想要在中斷函數里面準確記錄按鍵按下次數的話就會出問題的。
回復

使用道具 舉報

ID:207421 發表于 2019-6-14 17:54 | 顯示全部樓層
可以在中斷里面執行PWM調光等功能

如圖

如圖
回復

使用道具 舉報

ID:517466 發表于 2019-6-14 21:15 | 顯示全部樓層
樓主對C語言和51單片機的理解還不夠啊。INT0的概念純粹是C語言的知識,是為了在程序中操縱P3.2管腳時,使用的別稱。除了能控制管腳輸出信號,還可以配合控制寄存器和控制位,做單片機的設置工作,就像樓上給的資料那樣。比如控制這個管腳是在收到下降沿信號的時候產生中斷,還是遇到低電平的時候產生中斷。
EX0是替代51單片機中的中斷控制器(寄存器地址:0xA8)中的控制外部中斷0使能的一個控制位(位地址:0xA8),用來控制當外部中斷信號產生的時候,系統是否還響應這個中斷。EX=0,意味著即使外部已經產生了中斷信號,但系統不響應,不會進到中斷處理程序中去處理。
建議樓主有時間的話,多看看單片機原理的書。
回復

使用道具 舉報

ID:378990 發表于 2019-6-14 22:53 來自手機 | 顯示全部樓層
aiwenxue999 發表于 2019-6-14 08:39
①、INT0是在中定義了的,INT0上面的一杠代表:為低電平觸發。
②、看此鏈接:http://www.zg4o1577.cn/bbs/d ...

求教一下,我發現reg51.h里面,寫的是sbit INT0=0xB2,reg52.h里面,寫的是sbit INT0=P3^2,這是什么意思?
回復

使用道具 舉報

ID:328668 發表于 2019-6-15 20:29 | 顯示全部樓層
1 INT0頭文件里定義了,也就是庫里有了;
回復

使用道具 舉報

ID:328668 發表于 2019-6-15 20:34 | 顯示全部樓層
1 INT0頭文件里有了,也就是庫里已經給你寫好了;
2 中斷的開關,開的時候進中斷(滿足條件),關的時候不進中斷(滿足條件);中斷里寫了是因為不讓程序在中斷里的時候就再一次進中斷;


用占空比會比較好一點;控制亮度比較得心應手。
回復

使用道具 舉報

ID:480680 發表于 2019-7-24 16:56 | 顯示全部樓層
溝里郭嘉 發表于 2019-6-14 22:53
求教一下,我發現reg51.h里面,寫的是sbit INT0=0xB2,reg52.h里面,寫的是sbit INT0=P3^2,這是什么意思 ...

第一個是INT0的地址,很多里面用的是sfr,第二個是INT0所作用的引腳
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日韩有码一区 | 综合网在线 | 亚洲视频一区在线观看 | 国产精品久久久一区二区三区 | 国产亚洲欧美日韩精品一区二区三区 | 国产精品一区二区久久久久 | 精品乱码一区二区三四区 | 欧美激情久久久 | 一区二区在线 | 国产亚洲一区二区三区在线观看 | 国产三级精品视频 | 欧美综合网 | 99精品亚洲国产精品久久不卡 | 国产精品一区二区久久 | 国产福利视频 | 久久99精品久久久久久 | 日韩成人在线播放 | 人人人艹 | 国产欧美视频一区二区三区 | 亚洲免费片 | 国产一区h | 国产精品久久久久999 | 免费久久网| 中文av网站| 国产高清视频在线观看 | 国产免费一区二区 | 成人午夜影院 | 中文字幕一区二区三区四区五区 | 亚洲成人久久久 | 欧日韩在线观看 | 久久久久国产 | 欧美国产激情二区三区 | 99精品欧美一区二区三区综合在线 | 亚洲天堂精品一区 | 天天操夜夜拍 | 国产视频第一页 | 午夜视频在线视频 | 中文字幕免费 | 国产中文字幕在线观看 | av网站在线看 | 精品久久99 |