Устройство сделано чтобы занимать животных, в частности кошек, когда они ходят
по квартире и пищат от скуки.
Берёться простая лазерная указка и моторчик с редуктором. На мотор приклеивается
с наклоном кусок зеркала. Так чтобы при крутящемся моторе он отражал луч лазера
кругом на стене\полу. Скорость подбирается, просто посадить зеркало на вал не
удастся - слишком быстро. Надо понижающий редуктор.
Микроконтроллер будет спать неопределённое время от 0 до прим. 3-х часов. После
этого будет включать и выключать мотор с лазером неопределённое количество раз
с неопределённой частотой. В результате животные бегают за мигающей точкой по
кругу и, похоже, радуются жизни.
Из программы понятно побольше.
Pic Basic:
INCLUDE "bs2defs.bas" for b0 = 1 to 3 low portD.1 pause 240 high portD.1 pause 240 next b0
nachalo0: random w0 ' = 60 if w0 > 10000 then nachalo0 nachalo4 random w4 ' = 8 if w4 > 10 then nachalo4
for w8 = 1 to w4
nachalo1: random w1 ' = 20 if w1 > 1455 then nachalo1 nachalo2 random w2 ' = 120 if w2 > 500 then nachalo2 nachalo3 random w3 ' = 8 if w3 > 60 then nachalo3
for w7 = 1 to w3 low portD.1 pause w2 high portD.1 pause w1 next w7 next w8 low portD.1 sleep w0 goto nachalo0
Уже откомпилированный файл.
:020000040000FA :100000007328210820040319A00A8030201AA106B1 :100010002019A106A018A106210DA00DA10D6E2882 :10002000A301A200FF30A207031CA307031C6E2834 :100030000330A100DF301E201228A101E83EA000FD :10004000A109FC30031C2728A00703182428A007B7 :100050006400A10F242820182D28A01C312800009E :1000600031280800A701A6001C30A2006F30A300B1 :1000700058200F30831681048312FF306300A007DD :10008000031CA10703183E286E28A200013048284F :10009000A80023082102031D4F2822082002043053 :1000A00003180130031902302805031DFF306E28A4 :1000B0001030A800A101A001A70CA60C031C662803 :1000C0002208A00723080318230FA107A10CA00CE6 :1000D000A50CA40CA80B5C2824086E28831303131A :1000E0008312640008000130C00064000430400244 :1000F0008A110A1203188F28881083168810F0308E :1001000083128A011020881483168810F03083121D :100110008A011020C00A8A110A12031D752840089E :10012000A0004108A1008A0101202008C000210888 :10013000C1004008A0004108A1002730A3001030F2 :100140008A0145208A110A12031D8F284E08A0003B :100150004F08A1008A0101202008CE002108CF000D :100160004E08A0004F08A100A3010A308A014520D3 :100170008A110A12031DA6280130D600D70156089D :10018000A0005708A1004F08A3004E088A0145208F :100190008A110A12031D40294208A0004308A10049 :1001A0008A0101202008C2002108C3004208A000E3 :1001B0004308A1000530A300AF308A0145208A1111 :1001C0000A12031DCC284A08A0004B08A1008A018E :1001D00001202008CA002108CB004A08A0004B08D3 :1001E000A1000130A300F4308A0145208A110A12CF :1001F000031DE3284C08A0004D08A1008A0101203E :100200002008CC002108CD004C08A0004D08A1001A :10021000A3013C308A0145208A110A12031DFA28E5 :100220000130D400D5015408A0005508A1004D08A4 :10023000A3004C088A0145208A110A12031D39299E :1002400088108316881083124B08A3004A088A017D :10025000112088148316881083124308A3004208D3 :100260008A011120D40A0319D50A8A110A12031D22 :100270001329D60A0319D70A8A110A12031DBF28A7 :1002800088108316881083124108A70040088A014D :0602900033208A018F28D3 :02400E007D3FF4 :00000001FF
|