کامل ترین فروشگاه اینترنتی تابلو روان،تلویزیون شهری، دوربین مداربسته و قطعات و تجهیزات ساخت، مونتاژ و نصب

تابلو روان،تلویزیون شهری،تابلو LED،فروش تابلو روان،فروش اینترتی،فروشگاه اینترنتی تابلو روان،تابلو ال ای دی،تابلو دیجیتالی،قطعات تابلو روان،ماژول قرمز،ماژول رنگی،ماژول سبز،قاب تابلو روان،باکس تابلو روان،فرم تابلو روان،فرم تلویزیون شهری،قیمت تابلو روان،آموزش ساخت تابلو روان،تلویزیون غول پیکر،تلویزیون شهری غول پیکر،نمایشگر الکترونیکی،لیست قیمت تابلو روان،نصب تابلو روان،نصب تلویزیون شهری،راه اندازی تلویزیون شهری،راه اندازی تابلو روان،نرم افزار تابلو روان،نرم افزار تلویزیون شهری،فایل کانفیگ،مادربورد HD،مادربورد C1،مادربورد M10،آموزش HD،لیست قطعات تابلو روان،قیمت قطعات تابلو روان،تجهیزات ساخت تابلو روان،مونتاژ تابلو روان،آموزش جمع کردن تابلو روان،تابلو روان رنگی

تابلو فول کالر،لیست قیمت قطعات تابلو روان،تابلو روان چینی،تابلو روان با کیفیت بالا،تلویزیون شهری با کیفیت،LED Display،OUTDOOR LED TV،Full color led display،کانکتور IDC،کابل فلت،کابل دیتا،مادربورد،بورد کنترلر،پاور،پیچ گوشتی برقی،دریل شارژی،پیچ گوشتی شارژی،پیچ گوشتی برقی،چکش،کابل افزایش طول USB،سیم برق،پیچ ماژول،ماژول تابلو روان،آچار IDC،سیم لخت کن،پیچ سر مته،کابل دیتا بلند،افزایش طول USB،بست پلاستیکی،دستگاه تست تابلو روان،دوربین مداربسته،لیست قیمت دوربین مداربسته،قیمت دوربین مداربسته،نصب دوربین مداربسته،فروش دوربین مداربسته،ضبط تصویر دوربین مداربسته،دستگاه DVR،دستگاه دی وی آر،سیم دوربین،کانکتور IDC،آداپتور برق،پاور 1 آمپر،آچار BNC،میکروفن،دوربین دام،دوربین صنعتی،دوربین مخفی،میکروفن مخفی،آموزش دوربین،آموزش نصب دوربین مدار بسته،آموزش کنترل دوربین از اینترنت،انتقال تصویر با اینترنت،تابلو روان،تلویزیون شهری،قطعات تابلو روان،ساخت تابلو روان،دوربین مداربسته،لیست قیمت تابلو روان،لیست قیمت دوربین مداربسته،فروش ابزارآلات،فروش تابلو روان،ابزارآلات الکترونیک،فروشگاه اینترنتی تابلو روان،فروشگاه اینترنتی قطعات تابلو روان

+ نوشته شده توسط محمد ملک در دوشنبه 1393/07/14 و ساعت |

'**************************************
'LEARNING REMOTE DECODER
' Program by Mohammad Malek 860422
' malek64@gmail.com maker.blogfa.com
'**************************************
$regfile = "M8def.dat"
$crystal = 4000000
'-------------------------------------------------------------------------------
Config Pinb.0 = Input                                       'RF INPUT
Config Pinc.5 = Output                                      'Buzzer B.2
Config Pind.2 = Output                                      'relay 1
Config Pind.3 = Output                                      'relay 2
Config Pind.4 = Output                                      'relay3
Config Pind.5 = Output                                      'relay4
Config Pinc.4 = Output                                      'led1 learning led
Config Pinc.0 = Input                                       'key1
'--------------------------------- Alias  --------------------------------------
_in Alias Pinb.0                                            'RF input
Buzz Alias Portc.5                                          'B.1
Rel1 Alias Portd.2                                          'relay1
Rel2 Alias Portd.3                                          'relay2
Rel3 Alias Portd.4                                          'relay3
Rel4 Alias Portd.5                                          'relay4
Led1 Alias Portc.4                                          'learning led
Key1 Alias Pinc.0                                           'learn key
'--------------------------------- Timer ---------------------------------------
Config Timer1 = Timer , Prescale = 8 : Stop Timer1 : Timer1 = 0
'Config Watchdog = 2048
'--------------------------------- Variable ------------------------------------
Dim S(24)as Word
Dim I As Byte
I = 0
Dim Saddress As String * 20
Dim Scode As String * 4
Dim Address As Long
Dim Code As Byte
''''''''''''''''''''''''''''''''
Dim Ra As Long                                              'fp address
Dim Rnumber As Byte                                         'remote know
Dim Rnumber_e As Eram Byte
Dim Okread As Bit
Dim Error As Bit
Dim Keycheck As Bit
Dim T As Word                                               'check for pushing lean key time
Error = 0
Okread = 0
T = 0
Keycheck = 0
Dim Eaddress As Word                                        'eeprom address variable
Dim E_read As Byte
Dim E_write As Byte
Dim Eevar(100) As Eram Long
'-------------------------- read rnumber index from eeprom
Rnumber = Rnumber_e
If Rnumber > 100 Then
Rnumber = 0
Rnumber_e = Rnumber
Waitms 10
End If
'------------------- startup
Waitms 500
Set Led1
Gosub Beep
Gosub Beep
Reset Led1
Waitms 500
Enable Interrupts

Main:
'Start Watchdog
'************************************************************************ main
Do
'Reset Watchdog
Gosub _read
If Key1 = 0 Then
'Reset Watchdog
'Stop Watchdog
Gosub Beep
Waitms 100
Gosub Keys
'Start Watchdog
End If

Loop
'*******************************************************************************
'--------------------------------------------------------------------------read
_read:
Okread = 0
If _in = 1 Then
Do
'Reset Watchdog
If _in = 0 Then Exit Do
Loop
Timer1 = 0
Start Timer1
While _in = 0
'Reset Watchdog
Wend
Stop Timer1
If Timer1 >= 3500 And Timer1 <= 8800 Then
Do
If _in = 1 Then
Timer1 = 0
Start Timer1
While _in = 1
'Reset Watchdog
Wend
Stop Timer1
Incr I
S(i) = Timer1
End If
'Reset Watchdog
If I = 24 Then Exit Do
Loop
For I = 1 To 24
'Reset Watchdog
If S(i) >= 120 And S(i) <= 350 Then
S(i) = 0
Else
If S(i) >= 400 And S(i) <= 850 Then
 S(i) = 1
 Else
 I = 0
 Address = 0
 Code = 0
 Okread = 0
 Return
 End If
 End If
Next
I = 0
Saddress = ""
Scode = ""
For I = 1 To 20
Saddress = Saddress + Str(s(i))
Next
For I = 21 To 24
Scode = Scode + Str(s(i))
Next
Address = Binval(saddress)
Code = Binval(scode)
Gosub Check
''''''''''''''''''''''''''''''''''''''''''
I = 0
End If
End If
Return
'================================================================ keys  learning
Keys:
Reset Rel1
Reset Rel2
Reset Rel3
Reset Rel4
Set Led1
Keycheck = 1
Waitms 150
Do
If Key1 = 0 Then
Gosub Beep
While Key1 = 0
Incr T
Waitms 1
If T >= 5000 Then
T = 0
Gosub Beep
Rnumber = 0
Rnumber_e = Rnumber
Waitms 10
Set Buzz
Wait 1
Wait 1
Reset Buzz
Reset Led1
Return
Exit While
End If
Wend
If T < 5000 Then
T = 0
Reset Led1
Return
End If
End If
''''''''''''''''''''''''''^^^
Gosub _read
If Okread = 1 Then
Gosub Beep
''''''''''''''''''''''repeat check
If Rnumber = 0 Then                                         ' agar avalin remote as ke learn mishavad
Incr Rnumber
Rnumber_e = Rnumber
Waitms 10
Ra = Address
Eevar(rnumber) = Ra
Waitms 10
Exit Do
   Else                                                     'address avalin khane baraye zakhire address remote
For I = 1 To Rnumber
Ra = Eevar(i)
If Ra = Address Then                                        'agar address remote tekrari bod yani ghablan learn shode
Set Buzz
Wait 1
Reset Buzz
Error = 1
Exit For
Else
Error = 0
End If
Next
If Error = 0 Then                                           ' agar tekrari nabod
Incr Rnumber                                                'be meghdare rnumber ke index tedade remote haye learn shode ast yek vahed ezafe kon
If Rnumber > 100 Then                                       'agar bishtar az 100 remote learn shavad
Rnumber = 100
Set Buzz
Wait 5
Reset Buzz
Else                                                        'agar kamtar az 100 remote bod
Rnumber_e = Rnumber                                         'meghdare rnumber ra dar eeprom zakhore mikonad
Ra = Address
Eevar(rnumber) = Ra
Waitms 10
End If
End If
End If
Exit Do
End If
Loop
Okread = 0
Reset Led1
Return
'========================================================================= CHECK
Check:
Okread = 1
If Keycheck = 0 Then                                        'agar keycheck=1 bashad yani be releha farman nade
For I = 1 To Rnumber
Ra = Eevar(i)
If Ra = Address Then                                        'code
Gosub Command
Gosub Beep
Exit For
End If
Next
End If
Keycheck = 0
Return
'-------------------------------- Relay command
Command:
Select Case Code:
Case 1:
Toggle Rel1
Waitms 100
Case 2:
Toggle Rel2
Waitms 100
Case 4:
Toggle Rel3
Waitms 100
Case 8:
Toggle Rel4
Waitms 100
Case Else
End Select
Return
'-------------------------------------------------------------------------- BEEP
Beep:
Set Buzz
Waitms 80
Reset Buzz
Waitms 30
Return


 

+ نوشته شده توسط محمد ملک در چهارشنبه 1393/05/15 و ساعت |

پروگرامر USB جهت برنامه ریزی میکروکنترلرهای AVR

واقعا پروگرامر خوبیه و چند سالیه که دارم ازش استفاده می کنم.

 

جهت مشاهده نقشه در سایز اصلی اینجا کلیک کنید

دانلود برنامه میکرو و درایور ویندوز

+ نوشته شده توسط محمد ملک در یکشنبه 1392/08/26 و ساعت |

DIGITAL CONTROLLED STEREO AUDIO PROCESSORWITH LOUDNESS

TDA7313  or  PT2313

 

 

 

قابل استفاده برای دستگاه های صوتی فاقد ریموت کنترل

۳ تا ورودی استریو

۲ تا خروجی استریو یا ۴ کانال

زیر و بم کردن صدا "اکولایزر"

توسط باس I2C به میکروکنترلر وصل می شود.

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

+ نوشته شده توسط محمد ملک در جمعه 1388/09/27 و ساعت |

FP527 - FP1527 - HS1527 - SC527 - SC1527  and other OTP ENCODER Decoding by AVR Microcontroller  Without Use Interrupt Pins 433MHz & 315MHz

 

               دیکدر ریموت کنترل های لرن توسط میکروکنترلر های AVR

ریموت کنترل های ۴ کلیده ای در بازار وجود دارندبه نام ریموت های لرن "Learn" . هر كدام از اين ريموت ها كد مخصوص خودشان را دارند چون با  OTP "one time programmable" Encoder اطلاعات ارسالی را کد گذاری می کنند OTP Encoder چیپ هایی هستند که در ریموت های فرسنده قرار دارند و وقتی شما کلیدی را فشار می دهید کد آدرس ریموت به اضافه کد کلید فشرده شده را به ماژول فرسنده رادیویی می دهد تا اطلاعات برای گیرنده اسال شود . کسانی که با ریموت های  PT2262 كار كرده اند مي دانند كه براي تغيير كد بايد پايه هاي آدرس چيپ را  به زمين يا به مثبت يا آزاد بزارن ولي OTP‌ها اين جور نبوده و فقط يك آدرس منحصر به فرد دارند از آنجايي كه 20 بيت آدرس دارند مي توانند بيش از  يك ميليون كد توليد كرد البته اين كدها را ما نمي توانيم توليد كنيم بلكه توسط سازنده به هر چيپ يك كد منحصرا اختصاص مي يابد .

براي اينكه هر ريموت را به گيرنده معرفي كنيم كه اصطلاحا مي گويند لرن كنيم  بايد در مدار گيرنده از كنترل كننده اي استفاده كنيم كه بتواند  اطلاعات دريافتي را ديكد كند كه بهترين گزينه استفاده از يك ميكروكنترلر مي باشد وظيفه ميكروكنترلر اين مي باشد كه اطلاعاتش را از ماژول گيرنده راديويي دريافت كرده و از بين نويز محيط و امواج مختلف و زيادي كه در محيط وجود دارند اطلاعات درست فرسنده خود را بگيرد و آنها را ديكد كند تا بتواند تشخيص دهد اولا اطلاعات ارسالي مجاز مي باشند يعني فرسنده به گيرنده معرفي شده باشد دوما چه كليد يا كليد هايي فشرده شده است و در انتها فرمان مربوطه را صادر بكند . خوب تا اينجا تقريبا تا جايي كه وقتم اجازه داد توضيح دادم كه ماجراي كار ريموت هاي لرن از چه قرار مي باشد .

 

+ نوشته شده توسط محمد ملک در جمعه 1388/08/15 و ساعت |