基于51單片機的函數發生器設計

一.硬件方案

此函數信號發生器是基于單片機AT89C51設計而成的,能夠產生頻率范圍在0Hz—535Hz的鋸齒波、正弦波、三角波、矩形波四種波形,并且能夠通過液晶屏1602顯示各自的波形類型以及頻率數值。電路主要由51單片機+最小系統+DA0832模數轉換模塊+運放模塊+LED指示燈+按鍵模塊;

二.設計功能

(1)LCD1602液晶顯示波形種類和頻率值(10-100HZ)。可產生正弦波、鋸齒波、三角波、矩形波。
(2)按鍵設置波形種類和設定頻率步進值。
(3)通過電位器器改變振幅(0V-3.5V穩定)。
(4)有四個指示燈分別指示發出的是哪種波形,方便明了。

三.設計原理圖

(1)原理圖主要采用AD軟件進行設計,如圖:
在這里插入圖片描述

(2)Protues仿真圖如下:
在這里插入圖片描述

四.軟件設計

主程序源碼

void main()					 //主函數
{	init_lcd();m=65536-(150000/pinlv);a=m/256;b=m%256;initclock();led0=0;while(1){if(h==0){keyscan();//	display();}bujinjiance();switch(boxing){case 0 : P1=sin[u]; break;case 1 : P1=juxing[u]; break;case 2 : P1=sanjiao[u]; break;case 3 : P1=juchi[u]; break;}}
}
void T0_time()interrupt 1		   //定時器
{TH0=a;TL0=b;u++;if(u>=64)u=0;
}

資料鏈接:https://pan.baidu.com/s/1Hbobp6qM0UzS0RvwStO2KA?pwd=5sjp

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/17108.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/17108.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/17108.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

AI代理的類型、優勢及示例

AI 代理的類型、優勢和示例 AI 代理是重塑商業動態的關鍵技術進步。了解這些代理的運作方式,發現它們的關鍵優勢包括效率、可擴展性和成本效益。我們將探索代理的實例及它們在各領域的應用,為未來的人工智能趨勢和對客戶體驗的影響鋪平道路。 想象一支由…

`“use strict“`在JavaScript中是什么?它背后的原理是什么?

JavaScript的嚴格模式(strict mode)是ECMAScript 5引入的一項特性。如果你在腳本或函數的頂部聲明 use strict;,你就啟用了嚴格模式: use strict;當JavaScript引擎看到這個指令時,它將開始以一種特殊的模式解釋代碼。在這種模式下,當檢測到某些可能導致潛在錯誤的編碼實…

多重繼承引起的二義性問題和虛基類

多重繼承容易引起的問題就是因為繼承的成員同名而產生的二義性問題。 例:類A和類B中都有成員函數display和數據成員a,類C是類A和類B的直接派生類 情況一: class A {public:int a;void display(); }; class B {public:int a;void display; }; class C:…

添加AXI主IP(AXI4 Lite和AXI4)示例

添加AXI主IP(AXI4 Lite和AXI4)示例 將等效IP添加到框圖中。以下是AXI Central的示例步驟 直接存儲器存取(CDMA): 1.右鍵單擊方框圖中的任意位置,然后選擇“添加IP”。 2.搜索并雙擊AXI Central Direct Memo…

Android 錄音AudioRecord

AudioRecord是安卓多媒體框架中用于錄制音頻的工具。它支持錄制原始音頻數據,即PCM數據,PCM數據不能被播放器直接播放,需要編碼壓縮成常見音頻格式才能被播放器識別。通常生成PCM文件之后可將PCM文件轉成WAV文件一般的播放器便可直接播放了。…

前端開發技巧 --判斷文本是否溢出

const isTextOverflower()>{if(element){return element.offsetWidth > element.scrollWidth}return false}實現javascript 判斷文本是否溢出

【除了知乎,大家都在逛什么?持續更新~~】

除了知乎,大家都在逛什么? 中文博客瑯琊榜 https://github.com/qianguyihao/blog-list 中文博客瑯琊榜,只收錄優質的中文獨立博客,全網最精品。已收錄博客數量:328 個博客站點。 這些博主才華橫溢,滿懷自由…

【2024最新】軟考資料大全(免費)

IT行業越來越卷,大家都在忙著搞證,你免費不搞一個? 不管有沒有用,有總比沒有好噻~ 【初級】,【中級】,【高級】 都有,而且全部免費,全部最新的!真題,論文都…

Java查看線上對象的變量值

背影 有時候線上有些配置類,想查看下配置修改是否生效,傳統的方法要通過打日志的方法,如果不想通過打日志的方法,有沒有好的方案能解決這個問題呢 解決方案 arthas 步驟 得到類加載器的hashcode sc -d com.example.MyService…

眼底項目經驗

眼底項目經驗 可解釋性不足問題眼底項目有多牛逼可解釋性不足解法數據、算力、算法都免費送不僅預測當下,還能預測未來和慢病管理整合,形成一個實時健康檢測生態 可解釋性不足問題 今天下午和騰訊眼底項目人員討論, 他們不準備做全身性的多疾種, 因為深…

LINUX環境基礎練習題(附帶答案)

🔥 交流討論:歡迎加入我們一起學習! 🔥 資源分享:耗時200小時精選的「軟件測試」資料包 🔥 教程推薦:火遍全網的《軟件測試》教程 📢歡迎點贊 👍 收藏 ?留言 &#x1…

【typescript - tsc 編譯后路徑問題/路徑別名問題】

這幾天在寫typescript,遇到個路徑依賴問題,編寫的.ts文件直接運行OK,但是編譯成.js后,運行提示 Error: Cannot find module xxx,📝記錄分析和解決過程 。 問題描述 原始文件,有index.ts 其會引…

小白不知道怎么投稿?記住這個好方法

作為一名單位信息宣傳員,我最初踏上這條道路時,滿心憧憬著通過文字傳遞我們單位的精彩瞬間,讓社會聽見我們的聲音。然而,理想與現實之間的距離,卻在一次次郵箱投稿的石沉大海中漸漸清晰。那時的我,像所有“小白”一樣,以為只要用心撰寫稿件,通過電子郵件發給各大媒體,就能收獲滿…

4 CSS的 變換、過渡與動畫

CSS3引入了變換、過渡和動畫特性,使得網頁可以呈現出豐富的視覺效果和交互體驗。通過這些新特性,開發者可以創建復雜的動畫效果,而不需要使用JavaScript。 4.1 變換(Transforms) 變換允許開發者對元素進行旋轉、縮放…

Python考試復習--day2

1.出租車計費 mile,waitmap(int,input().split(,)) if mile<3:money13wait*1 elif mile>3 and mile<15:money13(mile-3)*2.3wait*1 else:money1312*2.3(mile-15)*2.3*(10.5)wait*1 print({:.0f}.format(money)) 【知識點1】&#xff1a; map() 函數 【知識點1】&…

代碼隨想錄算法訓練營第五十一天|300.最長遞增子序列,674. 最長連續遞增序列,718. 最長重復子數組

300.最長遞增子序列 dp數組的含義為dp[i]表示字符串以第i位置為末尾的最長遞增子序列的長度。 for (int i 1; i < nums.size(); i) {for (int j 0; j < i; j) {if (nums[i] > nums[j]) dp[i] max(dp[i], dp[j] 1);}if (dp[i] > result) result dp[i]; // 取…

設計模式 20 中介者模式 Mediator Pattern

設計模式 20 中介者模式 Mediator Pattern 1.定義 中介者模式&#xff08;Mediator Pattern&#xff09;是一種行為型設計模式&#xff0c;它通過封裝對象之間的交互&#xff0c;促進對象之間的解耦合。中介者模式的核心思想是引入一個中介者對象&#xff0c;將系統中對象之間…

Vue中,點擊提交按鈕,路由多了個問號

問題 當點擊提交按鈕是路由多了問號&#xff1a; http://localhost:8100/#/ 變為 http://localhost:8100/?#/原因 路由中出現問號通常是由于某些路徑或參數處理不當造成的。在該情況下&#xff0c;是因為表單的默認行為導致的。提交表單時&#xff0c;如果沒有阻止表單的默…

React Router v6:路由管理的最新進展

React Router v6 是 React 應用程序路由管理的一個重大更新&#xff0c;它引入了許多改進和簡化&#xff0c;包括對嵌套路由的更友好處理&#xff0c;以及對鉤子函數的使用。 2500G計算機入門到高級架構師開發資料超級大禮包免費送&#xff01; 1. Routes 重構 在 v6 中&…

Kubernetes數據存儲

1. 數據存儲 容器的生命周期可能很短&#xff0c;會被頻繁地創建和銷毀。那么容器在銷毀時&#xff0c;保存在容器中的數據也會被清除。這種結果對用戶來說&#xff0c;在某些情況下是不樂意看到的。為了持久化保存容器的數據&#xff0c;kubernetes引入了Volume的概念。 Volu…