PDA

View Full Version : نحوه اتصال lm35 به atmega32



مهندس نرم
جمعه 24 اردیبهشت 1389, 18:07 عصر
باسلام
من یک دماسنج دیجیتالی با atmega32 وlm35 ساختم میخوام مدارم توی یک دمای خاصی هشداربده نمیدونم آژیرمو به کدوم پایه میکرو وصل کنم وهمینطور سنسورم چطوری متصل بشه اصلا میکرو شمارش درسته؟
لطفا کمکم کنید

hamid-nic
جمعه 24 اردیبهشت 1389, 19:35 عصر
باسلام
من یک دماسنج دیجیتالی با atmega32 وlm35 ساختم میخوام مدارم توی یک دمای خاصی هشداربده نمیدونم آژیرمو به کدوم پایه میکرو وصل کنم وهمینطور سنسورم چطوری متصل بشه اصلا میکرو شمارش درسته؟
لطفا کمکم کنید
سلام دوست عزیز
بسته به کارتون و اینکه قراره سخت افزار تون چه کارایی بکنه میکرو را انتخاب می کنن . حالا شما atmega32 را انتخاب کردید . lm35 هم که یک سنسور دما است .
با توجه به زبان برنامه نویستون (زبان بیسک یا C یا . . . ) باید ورودی ها و خروجی ها را مشخص کنید . مثلا میگید پورت B شماره ی ششمش به عنوان ورودی باشه (البته اینم بگم که هر پورتی وظیفه ی خاصی داره که باید طبق کاتولوگش عمل کرد) یا مثلا خروجی باشه .
برای این سنسور با از قسمت آنالوگ به دیجیتال استفاده کنید که مبحث پیشرفته و تخصصی زبان مورد نظرتون محسوب میشه .
برای آژیر هم می توانید از یک رله که به آژیرتون وصله استفاده بکنید البته باید رله را به عنوان پایه ی خروجی درنظر بگیرید .
در این موارد مطالب زیادی در اینترنت می توانید پیدا کنید کافیه یکم حوصله کنید و بگردید .
موفق باشید.

singel
جمعه 21 خرداد 1389, 00:18 صبح
سلام دوست عزیز
اگه مشکل برنامه نویسی داری این کد با بسکام تقدیم به شما

اگر مشکل داشتی بگو تا راهنماییت کنم





$regfile = "M32def.dat" ' use the Mega32
$crystal = 1000000
Deflcdchar 0 , 32 , 32 , 31 , 31 , 31 , 31 , 32 , 32 ' replace ? with number (0-7)'
Deflcdchar 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 ' replace ? with number (0-7)
Deflcdchar 2 , 16 , 16 , 16 , 16 , 16 , 16 , 16 , 16 ' replace ? with number (0-7)
Deflcdchar 3 , 16 , 16 , 31 , 31 , 31 , 31 , 16 , 16 ' replace ? with number (0-7)
Deflcdchar 4 , 1 , 1 , 31 , 31 , 31 , 31 , 1 , 1 ' replace ? with number (0-7)
Deflcdchar 5 , 32 , 32 , 28 , 28 , 28 , 28 , 32 , 32 ' replace ? with number (0-7)
Config Adc = Single , Prescaler = Auto , Reference = Avcc 'config ADC
Start Adc
Dim W As Word , Perc As Word , Volt As Word , Volt_d As Byte , Channel As Byte , I As Byte , Cols As Byte , Cols_d As Byte
Cls
Cursor Off
Do
W = Getadc(0)
Volt = W * 5
Volt_d = Volt Mod 10
Volt = Volt / 10
Locate 1 , 1
Lcd Volt ; "," ; Volt_d
Cols = Volt / 2
Locate 2 , 1
For I = 1 To Cols
Select Case I
Case 1 : Lcd Chr(3)
Case 5 : Lcd Chr(4)
Case 10 : Lcd Chr(4)
Case 15 : Lcd Chr(4)
Case 20 : Lcd Chr(4)
Case Else : Lcd Chr(0)
End Select
Next I
Cols_d = Cols Mod 2
If Cols_d > 0 Then
Lcd Chr(5)
Cols = Cols + 2
Else
Cols = Cols + 1
End If
For I = Cols To 20
Select Case I
Case 1 : Lcd Chr(2)
Case 5 : Lcd Chr(1)
Case 10 : Lcd Chr(1)
Case 15 : Lcd Chr(1)
Case 20 : Lcd Chr(1)
Case Else : Lcd Chr(32)
End Select
Next I
Waitms 1000
Loop
End