亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? rr1050 ver11 pir.bas

?? AVR PWM Audio player from FAT16 MMC ver11
?? BAS
?? 第 1 頁 / 共 2 頁
字號:
'**************************** COMPILER INSTRUCTIONS ****************************

$crystal = 11059200
$regfile = "m8def.dat"
$baud = 57600

'********************************** ALIASES ************************************


' MMC
Cs Alias Portc.3
Clk Alias Portc.0
Mosi Alias Portc.2
Miso Alias Pinc.1

' Audio output
Ppwm Alias Portb.1

' Mute
Mute Alias Portd.4

' Tipke
Tipka Alias Pind.5

'PIR
Pir Alias Pind.6


'****************************** HARDWARE CONFIG ********************************

' MMC
Config Pinc.3 = Output
Config Pinc.0 = Output
Config Pinc.2 = Output
Config Pinc.1 = Input
Portc.1 = 1
Cs = 1

' Audio output
Config Pinb.1 = Output
Portb.1 = 0

' Tipka
Config Pind.5 = Input

' mute
Config Pind.4 = Output
Mute = 1

'PIR
Config Pind.6 = Input

' I2C config
Config Scl = Portc.5
Config Sda = Portc.4
Config I2cdelay = 30


'configurates watchdog timer
Config Watchdog = 256
Start Watchdog


' Timer for randomization
Config Timer0 = Timer , Prescale = 1024
On Ovf0 Randomizetimer
Enable Interrupts
Enable Timer0
Start Timer0


' Timer for PWM output
Config Timer1 = Pwm , Pwm = 8 , Prescale = 1 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Down


On Ovf1 Changepwm
Disable Timer1
Start Timer1
Pwm1a = 128
Pwm1b = 0



'**************************** VARIABLE DECLARATIONS ****************************

Dim Startid As Eram Byte

' za MMC protokol
Dim Mcmd As Byte
Dim Maddr As Long
Dim Mdata As Byte
Dim Mresp As Byte                                           'MMC response type1
Dim Mmccid As Word                                          'part of MMC CID
Dim Mdat(512) As Byte                                       'Matrica for data
Dim Readsector As Long                                      'adresa sektora
Dim Mmcrestarted As Bit                                     'MMC is inserted

' file sistem var's
Dim Filesystemtype As Byte                                  'type of file system
Dim Brsector As Long                                        'boot rector
Dim Fatno As Byte                                           'no of fat tables
Dim Maxroot As Word                                         'max root directory entries
Dim Sectorsperfat As Word                                   'sectors per fat table
Dim Sectorspercluster As Byte
Dim Reservedsector As Word                                  'reserved sector size
Dim Fatsector As Long                                       'FAT tables
Dim Dirsector As Long                                       'directory entries
Dim Datasector As Long                                      'data start
Dim Systemfound As Bit
Dim Bpointer As Word                                        'buffer pointer
Dim Filename As String * 8                                  'filename
Dim Fileextension As String * 3                             'fileextension
Dim Filesector As Long
Dim Filesize As Long
Dim Eofsector As Long
Dim Eofbyte As Word
Dim Filefound As Bit
Dim Proslo As Word
Proslo = 0

'random file
Dim Randomfilenumber As Byte
Randomfilenumber = Rnd(0)                                   'to fix bascom bug

'time variables
Dim Ts As Byte
Dim Tm As Byte
Dim Th As Byte
Dim Ty As Byte
Dim Tw As Byte

'alarm variables
Dim Noalarms As Byte
Dim Tas(50) As Byte
Dim Tam(50) As Byte
Dim Tah(50) As Byte
Dim Taw(50) As Byte

'play variables
Dim Parttoread As Bit
Dim Partloaded As Bit
Dim Playend As Bit

'temporary variables
Dim Tempstring As String * 8
Dim Tempword As Word
Dim Templong As Long
Dim Tempbyte As Byte
Dim Q As Word                                               'za petlje
Dim W As Word

'****************************** SUB DECLARATION ********************************

Declare Sub Mmcinit
Declare Sub Mmccmd
Declare Sub Mmccheck
Declare Sub Mmcget1stpart
Declare Sub Mmcget2ndpart
Declare Sub Mmcstartread
Declare Sub Mmcread
Declare Sub Mmcwrite

Declare Sub Getsysteminfo
Declare Sub Getfileinfo
Declare Sub Getendoffile

Declare Sub Getalarms
Declare Sub Checkalarm
Declare Sub Gettimetoset
Declare Sub Getrandomfile

Declare Sub Playfile

Declare Sub Settime
Declare Sub Gettime

Declare Function Getlong(byval Pocetak As Word ) As Long
Declare Function Clustertosector(byval Cluster As Word) As Long

Declare Sub Printbuffer


'***************************** MAIN PROGRAM ************************************

Waitms 100
Reset Watchdog

' main loop

Do
 Mainloop:
 Mmccheck
 If Mmcrestarted = 1 Then
  Reset Watchdog
  Getsysteminfo
   Reset Watchdog
  'Getalarms
  'Reset Watchdog
  Mmcrestarted = 0                                          '
 End If

 Reset Watchdog
 If Pir = 0 Then
  If Proslo > 2500 Then                                     '60 sec
   Getrandomfile
   Reset Watchdog
   Playfile
   Reset Watchdog
   Proslo = 0
  End If
 End If
 If Tipka = 0 Then
  'Reset Watchdog
  'Gettimetoset
  Reset Watchdog
  Getrandomfile
  Reset Watchdog
  Playfile
  Reset Watchdog
 End If
 Reset Watchdog
 Waitms 50



 'Checkalarm
Loop

End                                                         'end program



'******************************** CHANGE PWM ***********************************

' on timer1 (PWM) interrupt
' changes pwm value to next value from buffer

Changepwm:
  Pwm1a = Mdat(bpointer)
  Bpointer = Bpointer + 1
  If Bpointer = 513 Then                                    '513
    Bpointer = 1
    Parttoread = 1
    Partloaded = 0
  End If
  If Bpointer = 257 Then
    Parttoread = 0
    Partloaded = 0
  End If
Return


'******************************* RANDOMIZE TIMER *******************************

' on timer0 interrupt
' changes random number for better randomization
Randomizetimer:
 If Proslo < 30000 Then
   Proslo = Proslo + 1
 End If
 ___rseed = ___rseed + 1
Return


'****************************** PLAY FILE **************************************

Sub Playfile
 'play file written in filename, fileextension
 Getfileinfo
 If Filefound = 0 Then
  Do
  Loop
 End If


 Mute = 0

 Readsector = Filesector
 Mmcread
 Playend = 0
 Bpointer = 1
 Partloaded = 1

 Reset Watchdog

 Enable Timer1

 Do
  If Partloaded = 0 Then                                    'if part needs to be readed
   If Parttoread = 0 Then                                   'if part0 is need to be readed
     Readsector = Readsector + 1
     Mmcget1stpart
     Partloaded = 1
     Reset Watchdog
   Else                                                     'if part1 is need to be readed
     Mmcget2ndpart
     Partloaded = 1
     Reset Watchdog
   End If
  End If
  If Readsector => Eofsector Then                           'pusten je prvi dio predzadnjeg sektora
    Playend = 1
  End If

 Loop Until Playend = 1

 Reset Watchdog

 If Eofbyte <= 256 Then                                     'hold last value to end of byte
   For Q = Eofbyte To 256
    Mdat(q) = 128
   Next Q
   Reset Watchdog
 End If
 Do
  Reset Watchdog
 Loop Until Partloaded = 0                                  'pusten je zadnji dio predzadnjeg sektora
 Mmcget2ndpart
 Partloaded = 1
 For Q = Eofbyte To 512                                     'hold last value to end of byte
   Mdat(q) = 128
 Next Q

 Do
 Reset Watchdog
 Loop Until Partloaded = 0
 Partloaded = 1                                             'pusten je prvi dio zadanjeg sektora
 For Q = 1 To 256
    Mdat(q) = 128
 Next Q

 Do
  Reset Watchdog
 Loop Until Partloaded = 0                                  'pusten je drugi dio zadnjeg sektora
 Partloaded = 1
 For Q = 257 To 512
    Mdat(q) = 128
 Next Q
 Disable Timer1
 Mute = 1

End Sub


'******************************* GET RANDOM FILE *******************************

Sub Getrandomfile
 '1st entry - no of files (0-255)
 'entry format:
 'NNNNNNNN
 'N - short filename format
 Randomfilenumber = 0
 Filename = "DATOTEKE"
 Fileextension = "CFG"
 Getfileinfo
 Tempbyte = 0
 If Filefound = 1 Then
  Readsector = Filesector - 1

  Do
   Reset Watchdog
   Readsector = Readsector + 1
   Mmcread
   If Readsector < Eofsector Then
    Tempword = 512
   Else
    Tempword = Eofbyte
   End If
   Tempword = Tempword - 1
   For Q = 1 To Tempword Step 8
    Incr Tempbyte                                           'limit to 255 files
    If Tempbyte = 1 Then
      Randomfilenumber = Rnd(mdat(1))
      Randomfilenumber = Randomfilenumber + 2
    End If

    If Tempbyte = Randomfilenumber Then
     Filename = ""
     Fileextension = "RAW"
     For W = 0 To 7
      Bpointer = Q + W
      If Mdat(bpointer) <> &H20 Then
       Filename = Filename + Chr(mdat(bpointer))
      End If
     Next W
     Filename = Ucase(filename)

    End If

   Next Q
  Loop Until Readsector => Eofsector
 End If

End Sub


'*********************************** CHECK ALARM *******************************

Sub Checkalarm
 Gettime
  For Q = 1 To Noalarms
   If Tah(q) = Th Then
    If Tam(q) = Tm Then
     If Tas(q) = Ts Then
      ' Print "Alarm at:";
      ' Print Hex(th) ; ":" ; Hex(tm) ; ":" ; Hex(ts)
       Getrandomfile
       Playfile
     End If
    End If
   End If
  Next Q
End Sub



'********************************** GET ALARMS *********************************

Sub Getalarms
 'entry format:
 'SMHWNNXX
 'S - seconds BCD
 'M - minutes BCD
 'H - hours BCD

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91视频一区二区| 成人影视亚洲图片在线| 成人av在线资源网| 欧美日韩国产一级片| 中文字幕电影一区| 另类小说欧美激情| 欧美日韩在线综合| 亚洲欧美日韩一区二区三区在线观看| 精一区二区三区| 欧美精品日韩精品| 亚洲卡通欧美制服中文| 国产精品亚洲成人| 欧美一区二区视频免费观看| 亚洲中国最大av网站| 成人午夜av影视| 久久精品男人天堂av| 蜜臀av性久久久久av蜜臀妖精| 欧洲精品视频在线观看| 国产精品的网站| 国产激情一区二区三区四区| 日韩一区二区三区三四区视频在线观看| 亚洲欧美一区二区三区国产精品 | 一区二区欧美精品| fc2成人免费人成在线观看播放| 亚洲夂夂婷婷色拍ww47| 亚洲国产欧美在线| 91理论电影在线观看| 欧美激情一区二区在线| 国产一区二区三区免费在线观看| 欧美一区二区三区男人的天堂| 亚洲福利一二三区| 日本韩国欧美在线| 亚洲婷婷综合久久一本伊一区| 成人在线视频首页| 中文av一区二区| 成人自拍视频在线观看| 国产午夜亚洲精品午夜鲁丝片| 国内精品伊人久久久久影院对白| 日韩欧美电影一区| 欧美一区中文字幕| 午夜精品久久久久久久蜜桃app| 色美美综合视频| 一区二区三区在线视频免费| 色狠狠一区二区| 亚洲一区二区不卡免费| 色天使色偷偷av一区二区| 亚洲免费资源在线播放| 在线观看91视频| 天涯成人国产亚洲精品一区av| 欧美高清激情brazzers| 日韩在线观看一区二区| 欧美tickle裸体挠脚心vk| 紧缚奴在线一区二区三区| 久久女同精品一区二区| 国产成人一区在线| 国产精品网站一区| eeuss影院一区二区三区| 亚洲欧美另类小说| 欧洲av一区二区嗯嗯嗯啊| 香蕉久久一区二区不卡无毒影院| 91精品综合久久久久久| 精品影院一区二区久久久| 久久天天做天天爱综合色| 成人综合在线观看| 亚洲激情av在线| 6080午夜不卡| 国产老肥熟一区二区三区| 国产精品麻豆视频| 色悠久久久久综合欧美99| 视频一区视频二区中文| 日韩一级大片在线观看| 国产精品一区二区在线观看网站| 亚洲欧洲国产日本综合| 欧美日韩一级二级| 久久er精品视频| 国产精品久久久久久久浪潮网站| 日本电影欧美片| 蜜桃精品视频在线| 国产精品免费观看视频| 欧美日韩不卡一区| 国产乱淫av一区二区三区| 亚洲精品免费在线| 日韩精品影音先锋| 97成人超碰视| 日韩在线一二三区| 国产精品福利av| 欧美精品第1页| 国产精品综合视频| 一区二区在线观看av| 日韩免费成人网| 91猫先生在线| 久久国产三级精品| 中文字幕一区二区三区色视频| 欧美色老头old∨ideo| 国产精品一区二区三区乱码 | 精品国精品国产尤物美女| 99久久国产综合精品麻豆| 视频一区国产视频| 亚洲欧洲日韩一区二区三区| 91精品国产91久久综合桃花| www.一区二区| 看电视剧不卡顿的网站| 亚洲欧美色图小说| 久久久国产综合精品女国产盗摄| 在线一区二区三区四区五区 | 日韩电影免费一区| 最新国产成人在线观看| 欧美tickling网站挠脚心| 91搞黄在线观看| 国产69精品一区二区亚洲孕妇| 午夜精品久久久久久久久| 欧美极品少妇xxxxⅹ高跟鞋 | 99re热这里只有精品视频| 九九国产精品视频| 亚洲电影你懂得| 中文字幕在线不卡| 日韩欧美激情在线| 欧美天堂一区二区三区| 成人高清视频免费观看| 精品一区二区三区免费| 亚洲一区二区高清| 综合激情成人伊人| 日本一区二区三区电影| 欧美成人女星排名| 欧美在线制服丝袜| 成人av在线资源网站| 国产美女在线观看一区| 久久99精品久久久久| 日韩在线一区二区三区| 一区二区在线观看视频| 国产精品久久二区二区| 久久久久久**毛片大全| 日韩欧美一二区| 亚洲电影激情视频网站| 亚洲美女视频一区| 亚洲欧洲另类国产综合| 日本一区二区三级电影在线观看| 亚洲精品一区二区精华| 日韩精品一区二区三区中文不卡 | 国产精品主播直播| 精油按摩中文字幕久久| 麻豆精品一区二区综合av| 三级精品在线观看| 亚洲一区免费在线观看| 亚洲精品va在线观看| ●精品国产综合乱码久久久久| 中文字幕国产一区| 国产精品视频在线看| 国产午夜精品久久久久久久| 久久一二三国产| 久久这里都是精品| 26uuu亚洲| 国产性色一区二区| 国产亚洲欧美在线| 中文字幕精品在线不卡| 国产精品欧美久久久久无广告 | 久久影院视频免费| 2024国产精品| 久久久精品tv| 国产精品天干天干在观线| 欧美国产日本韩| 日韩一区在线免费观看| 亚洲视频中文字幕| 亚洲精品国产视频| 亚洲五码中文字幕| 日韩av一区二区在线影视| 日韩 欧美一区二区三区| 日韩高清在线一区| 另类欧美日韩国产在线| 国产综合久久久久影院| 国产盗摄视频一区二区三区| 高清不卡一区二区在线| jizzjizzjizz欧美| 国产精品久线观看视频| 欧美videofree性高清杂交| 国产做a爰片久久毛片| 日韩高清不卡一区| 日韩精品在线看片z| 精品福利视频一区二区三区| 精品免费国产一区二区三区四区| 欧美成人一区二区三区| 2017欧美狠狠色| 国产精品久久久久久久久动漫| 国产精品久久影院| 亚洲综合色自拍一区| 日韩精品久久久久久| 国产真实精品久久二三区| 国产精品一级黄| 91在线免费播放| 欧美三级在线播放| 日韩久久久久久| 国产农村妇女毛片精品久久麻豆 | 欧美性猛交xxxx乱大交退制版| 欧美二区乱c少妇| 久久综合九色综合97婷婷女人| 中文字幕精品一区二区精品绿巨人| 亚洲精品日韩一| 麻豆专区一区二区三区四区五区| 国产一区二区免费看| 色婷婷av一区二区三区gif|