Wejście (pin procka PORTB.0) programujesz jako wejście . Ustawiasz wysoki poziom tego wejścia , tak aby naciśnięcie przycisku (zwarcie do masy) wymusiło niski poziom na tym wejściu , wykrywany przez program jako If PINB.0 = 0 Then ' coś do wykonania (naciśnięty przycisk)
Generator podepnij do PINB.1 i config PINB.1=input
...a tak z ciekawości zapytam jak długi zadeklarowałeś ten string LINIA ??? skoro jak rozumiem obsługujesz zapewne SMSy. To chyba długość co najmniej 160 hmmm ??... U mnie , zmienna Line ma rozmiar 30B , ponieważ pobieram do niej tylko ... jakby tu powiedzieć ... mnemoniki komend AT i ich parametry , a SMS-a dekoduje "w locie" , w czasie przerwań od...
[syntax=vbnet]Config Portd.2 = Input[/syntax] zamiast tego, powinno być: [syntax=vbnet]Config Pind.2 = Input[/syntax]
Balu nie wiem co to ddr DDRx jest to rejestr, który służy do określenia kierunku transmisji portu. Input lub Output.
C_P skorzystaj z SERIN i SEROUT . One pozwalają na dowolne użycie końcówek, gdyż jest to w 100% dynamiczny UART. Balu. To nie w tym leży problem.
MES Mariusz --> przecież w tym co pisałem nie chodziło o tworzenie na siłę przerwania dla RC5 bo to akurat dobry pomysł jak na Bascom, chociaż co nieco spowalnia pracę ale może być ;) Chodziło o podopwiedź że można utworzyć dodatkowe przerwanie, które przerwie ci INPUT. Jeśli chodzi o standard pisania programów to ja cię do niczego nie namawiam na siłę....
Zamiast INPUT użyj do odczytu danych polecenie WAITKEY().
Tak prymitywnie to wyślij to sobie ze spacją i potem podziel otrzymany string szukajac spacji [syntax=vbnet] Print V1 ; " " ; A1 Dim MyArray(2) As String * 5 , M As Byte M = Split(CalyOdebranyString , MyArray(1) , " ") 'podziel szukając spacji Locate 1 , 1 : Lcd MyArray(1) Locate 2 , 1 : Lcd MyArray(2)[/syntax] Radzę też napisać u góry w kodzie : [syntax=vbnet]Config...
No to, to co odbierzesz z RS'a wstawiasz do zmiennej, np dane i potem Pwm1a=dane Wszystko jest w helpie! Rzuć okiem na polecenie input!
Witam. Mam problem, Napisałem program ale nie działa tak jakbym tego oczekiwał. :cry: Config Portd.1 = Output , .... ........ Config Portd.1 = 0 , ..... Zauważ że cytowana wyżej linia druga zmienia wcześniejszą konfigurację portu z OUTPUT na INPUT. e marcus
DDR to nie instrukcja tylko rejestr portów np. DDRB - rejestr określający kierunek portu PortB (wejście czy wyjście). W bascomie konfigurujesz np. Config portb.5=output lub np. config portb=input Po szczegóły odsyłam do dokumentacji procesora i języka Bascom.
Witam A u kolegi bascom nie wywala błędów? Port składa się z 8 pinów czyli 8bitów albo bajtu.(portd- portd.0;portd.1;.....do portd.7 czyli 8pinów Więc taki zapis portd.4=255 jest błędny bo jednemu bitowi nie możemy nadać wartości 255 możemy albo 0 albo 1.(a prawidłowo portd.4=1 albo0 ) Taki zapis jest poprawny portc=255 co jest równoważne z 11111111...
Bufor ten ma 3 znaki ale po pojawieniu się pierwszego znaku od razu jest on przesuwany bo bufora programowego. Czyli działa to jak jak by bufor sprzętowy miał tylko 1 znak.
Najpierw sprawdź czy coś przyszło a potem dopiero daj Input.
Możesz jeszcze spróbować: 1. Zmienną I w odbiorniku zdefiniować jako Word a nie String 2. Zastąpić Cls w pętlach przez szybsze Locate 1 , 1 (wymagane formatowanie wyświetlanej wartości) Edit: [syntax=basic4gl]Dim I As Word Input I Noecho[/syntax]
Temat powinien polecieć do kosza ale... :D Na początek musisz wiedzieć że do odczytu danych z końcówek portu służy rejestr PINx czyli w twoim przypadku PINA. Po za tym musisz uruchomić wew. rezystory podciągające (pull-up) czyli piszesz np. PORTA = 255. Na koniec powinno to wyglądać tak : PORTB = PINA . Po więcej informacji sięgaj do helpa tam wszytsko...
CONFIG PIND.0 = INPUT ;ustawienie jako wyjście PORTD.0 = 1 ;podciągnięcie do plusa
Niestety dość wolno, prosty program w Bascom, odczyt z karty SD: "Line Input" + funkcja "mid" -> z kwarcem 12Mhz okolo 3-4 sekundy, ale jakość jest bardzo dobra.
Teraz widzę ze to troszeczkę inaczej będzie działało, będą 3 zmienne p1, p2, p3 i w każdej zmiennej będą albo 0 albo 1. Jeśli na p1 będzie 1 to zapal diodę, jeśli 0 to zgaś Jeśli na p2 będzie 1 to zapal druga diodę, jak zero to zgaś. Itd.
nie dotykam ale wytłumaczę to inaczej . Tak to jest... Jeżeli pin wejściowy reaguje na dotyk palca, to pierwszy powód jest brak podciągania na tym porcie, jeżeli jednak port ten jest podciągnięty do Vcc to przyczyną jest błędna konfiguracja tego portu. Wejścia konfiguruj raczej: config PINB.1 = input ; zamiast: config PORTB.1 = input Bascom tu nie...
Nie lepiej odczytywać UART za pomocą Inkey() ? Najlepiej jeszcze w przerwaniu. Zamiast Input wykorzystać buforowanie i Bytematch=13
Witaj :) Bez problemu możesz je ustawić jak wyjścia lub wejścia. Np. cały port b jako wyjście / wejście Config portb = output / input Albo pojedynczo poszczególne wyprowadzenia Config portb.5 = output Config portb.6 = output Config portb.7 = input itd... Pozdrawiam
Do $timeout = 1000000 Input "Czekam 100000 Cykli jesli bedzie ich własnie tyle no chyba że wcześniej będzie chr(13):" , zmienna Print "To bede tu :) " ; zmienna $timeout = 0 Input "Tu będę czekał wieczność jeśli nie bedzie chr(13): " , zmienna Print "I tego napisu już nie zobaczysz:("...
Witam. Chciałbym uzyskać efekt parametru echo on instrukcji input (mikrokontroler otrzymuje znaki po UART, i natychmiast wysyła je spowrotem) dzięki czemu na ekranie monitora portu COM będę miał wyświetlane wpisywane przez siebie znaki. Niestety używam konwertera http://obrazki.elektroda.pl/2797859300_1... Oczywiście w takim przypadku...
Zainteresuj się funkcją Input Capture Unit - opis oraz przykład dla C: http://mikrokontrolery.blogspot.com/2011...
, przetłumacz poniższy kod z BASCOM AVR na Arduino Uno: $regfile = "attiny2313.dat" $crystal = 8000000 Dim A As Byte a=0 Config Pind.6 = Output led Alias Portd.6 led= 0 Config Pind.0 = Input Portd.0 = 1 Sw Alias Pind.0 do if a >1 then a=0 if sw=0 then bitwait sw, set incr a End If if a=1 then toggle led waitms 100 else led=0 end if loop end Przekształcanie...
EEEEE xury :) Działa działa :) Mnie to spędzało z powiek sen ciut dłużej. Bascom AVR 1.11.9.8 kompiluje dyrektywę Config Input = XXXX , mi to działa na ATmega32. Oczywiście sprawdziłem to kilka godzin temu.
Pewnie chodzi o znaki końca linii. Domyślam się, że przy "Input" Bascom czeka na koniec lini. Pod terminalem pewnie wciskasz "enter" i wysyła koniec lini, a "echo" wysyła to co mu wpiszesz i nic więcej. No i dochodzą jeszcze różne znaki końca linii: windowsowe CRLF (CR=13,LF=10) pod linuksem jest samo LF, a pod macem samo CR. Nie wiem jak Bascom ma...
Dzięki za podpowiedzi, wykorzystałem polecenie inkey() i to wystarczyło w zupełności. Kodu nie podaję, gdyż wystarczy wpisać w helpie inkey i wszystko jasne jak na dłoni :)
Czy nie lepiej by było zamiast bawić się w pojedyncze znaki odebrać cały tekst hurtem. [syntax=vbnet] Do If Tekst = "Zgaś" Then portc.1 = 0 Elseif Tekst = "Zapal" Then portc.1 = 1 End If Loop End odbierz: Input Tekst Return [/syntax]
Ma się dobrze jeśli ma odbierać dane z bufora. Jeśli Twoje Print Komenda ; Chr(13); zmieniłbyś na Print Komenda To z powodzeniem mógłbyś odbierać w przerwaniu Pozostało by ci tylko ustawić: Config Input = Crlf , Echo = Crlf Config Serialin = Buffered , Size = 80 , Bytematch = 13 a przy odbieraniu: Input Odczyt Noecho
INKEY i INPUT stricte nie czyszczą bufora. Od tego jest CLEAR SERIALIN. Jednak korzystanie z INKEY i INPUT pobierają dane z bufora i przesuwają wskaźniki, co także powoduje, że bufor jest "opróżniany" - choć dane w pamięci dalej są.
Czyli ten rbit jest konieczny, czy nie? Potrzebny jest jeżeli nie chcesz stracić wysyłanych danych. Slave będzie miał informację, że może wpisać kolejną wartość, ponieważ poprzednia została odczytana. Tak naprawdę można zastanowić się jak rozwiązać jakiś problem, czy coś zmienić, ewentualnie zrezygnować z czegoś jak będziesz miał konkretny kod programu....
Co się dzieje jak odbierzesz dane z portu komendą INPUT?
Do RS232 wystarczą 3 przewody, a jeśli nie będziesz potwierdzał poprawności odbioru to tylko dwa. Zobacz w pomocy rozkazy PRINT# i INPUT#.
No i warto zapamiętać, że rejestr PIN jest w ATMEGA8 tylko do odczytu. To ja dopiszę, że w BASCOM Config PINB.1=Input jest zupełnie poprawną formą. Ale tylko Config. Natomiast jeśli naraz ustawiamy wszystkie bity to powinno być Config PORTB=Input.
Chyba tak w BASCOMie [syntax=basic4gl]Config Portc = Input Portc = 0 [/syntax]
A co tam chcesz ustawić w tym timerze? Coś dostrzegłem. Co nto ma być Config portb.1=1? Czytelniej chyba = input lub output. Dodano po 16 A masz helpa do bascoma po polsku?
Nie analizowałem programu dogłębnie ale widzę w nim INPUT. Jak dobrze pamiętam INPUT zatrzymuje program. Dane przychodzące należy sprawdzać za pomocą: [syntax=basic4gl]zmienna = ISCHARWAITING() 'lub zmienna = ISCHARWAITING( #kanał )[/syntax] Funkcja zwraca wartość 1 gdy w buforze transmisji sprzętowego układu UART znajduje się oczekujący znak. (Z drugiego...
Sprawdź czy coś się zmieni gdy dopiszesz przed config adc, config pina.0 = input .
Zrobiłem wszystko tak jak napisałeś, zadeklarowałem uC i połączyłem wszystko jak ma być i dalej nic. Zmieniałem funkcje inputbin na input i to samo.
Spróbuj If a="wykonaj" then ... albo zamiast cudzysłowu weź to w apostrofy, bo nie pamiętam jak to w tym języku leci. Tak samo oczywiście z instrukcją PRINT (print "OK")
HELP powie CI wszystko... PRINT to PRINT Do odbierania masz INPUT plus jego odmiany INPUTBIN i INPUTHEX
A może by tak: Config Portc = Input
Wejścia Enable podłącz do masy, a na wejścia Vref podaj napięcie z zakresu od 1.5V do 7.5V ustalające wartość prądu. Cytat z tabelki z dokumentacji do której podałeś linka "VREF1 The output current is determined by the voltage (in the range 1.5 to 7.5 V) input to these pins" oraz: "ENABLE1 Output on/off settings High-level input: output off Low-level...
...Sprawdzę w datasheet bo widzę, że opinie są różne. A myślisz może , że mi to sie przyśniło :?: Niepotrzebna zgryzliwość :-( Nie da mi to jednak odpowiedzi na pytanie jak będzie pod Bascomem...robiw Chyba umiesz w Bascomie ustawić lub skasować bit :?: Piotrek Wyobraź sobie, iż umiem więcej... jednak pisząc w języku wysokiego poziomu nie wiesz jak...
na dowolnym pinie możesz uruchomoć programowy UART w bascom wygląda to tak : Open "comc.0:1200,8,n,1" For Input As #1 ... itp
(at)xury to polecenie Open "COM1:" For Binary As #1 konfiguruje sprzętowy UART jako kanał. Takie polecenie jest konieczne jeśli używamy programowych UARTów lub obsługi np. kart SD poprzez bibliotekę AVR-Dos, gdyż wtedy powinniśmy też przypisać kanał uartowi sprzętowemu, aby funkcje Print i Input były jednoznacznie identyfikowane z kanałem...
Witam Inkey odbiera tylko jeden znak (bajt) przesłanej informacji. Użyj lepiej funkcji – input /zapoznaj się z pomocą Bascoma. Do przesyłania informacji na duże odległości używaj jak najmniejszej szybkości.
czy nie potrzebna jest tutaj instrukcja INKEY() ? swojego czasu zrobiłem taki układ , że dwa procki atmega8535 przesyłały między sobą zmienną. program zajął dosłownie 3,4 linijki w odbiorczym użyłem instrukcji inkey() tzn , jeżeli było coś w buforze(różne od 0 ) to wyświetlało daną. oczywiście czasy w realizacji pętli były takie same oraz kwarce również...
Z mojej strony była mowa o koncepcji. Procedurę skrobnę jak już zdecyduje się na koncepcję. Osobiste wycieczki zbyteczne. --- edit --- [syntax=basic4gl] $sim $regfile = "m16def.DAT" $crystal = 8000000 $baud = 4800 Echo Off Nadawanie Alias Portd.7 Config Nadawanie = Output Dim Zdanie As String * 30 Dim Dlugtxt As Byte Dim Znak As String * 1 Dim Pozycja_poczatku...
W Bascomie wyglada to tak: Config PORTA = Input PORTA = 255 '(lub &hFF lub &b11111111) Spowoduje to ze port A bedzie portem wejsciowym z podciagnietymi wejsciami do + zasilania. Jezeli w drugiej linijce znajdzie sie zero to wtedy port bedzie w stanie "trzecim" czyli tzw. "plywajacym" czyli nie bedzie podciagniety do niczego. Asembler: ldi r16,0x00 out...
Nie działa bo masz nie włączone podciąganie do plusa. Rejestry PIN nie służą do zapisu w tym procesorze (tylko w niektórych modelach zapis 1-dynki do nich powoduje zmianę stanu odpowiadającego bitu w rejestrze PORT). http://www.atmel.com/Images/doc2503.pdf - strona 64 Musisz dać dla każdego przycisku po instrukcji Config ... Input instrukcję Set Portd.x...
Skoro stosujesz bufor i czytasz całe linijki to nie ma sensu czytać znak po znaku. Czytaj całą linijkę za pomocą Input, i nie bój się, że program Ci zawiśnie, bo wykorzystując Bytematch=13 już wiesz że masz linijkę w buforze więc czytaj linijkę dopiero wtedy kiedy ona tam jest. A co do pytania to tak. Pierwsza linijka to dane o długości PDU, a druga...
Nie działa deklaracja ... a czy później deklarujesz kanał przy PRINT lub INPUT?
UART konfiguruje tak: Config Serialin = Buffered , Size = 22 , Bytematch = 13 a przerwanie: Serial0charmatch: lds r24,{event} inc r24 sts {event},r24 Return W pętli głównej czekam na event, i tu można byłoby przepisać bezpośrednio z bufora UARTa do tablicy. Tylko gdzie jest ten bufor i czy można bezpośrednio przepisać ramkę ?...
Do autora - przyjrzyj się [syntax=vbnet]Config Portd.5 = Output : Dc_wlacz Alias Portd.5 Config Portd.1 = Input : S12_wolniej Alias Portd.1 Config Portd.2 = Input : S11_szybc Alias Portd.2 Config Pina.0 = Output : Kier_lewo Alias Pina.0 Config Pina.1 = Output : Kier_prawo Alias Pina.1 Config Pina.4 = Input : S10_start Alias Pina.4 Config Pina.5 = Input...
Na początku podłącz tylko jeden czujnik Odczytaj wartość temperatury, później numer seryjny. Jeszcze jedna uwaga, jak deklarujesz port jak wejście to nie tak Config Porta.1 = Input tylko tak Config Pina.1 = Input
SERIN i SEROUT to nie jest do RS232. Do tego jest Print/Printbin i Input/Inputbin. Jest jeszcze Inkey.
Według mnie obie są błędne, a pierwsza jest karygodna. Błędy pierwszej: 1. Wait w obsłudze przerwania !!!!!!! 2. Odczyt w przerwaniu przez input, a bez bufora - po odebraniu znaku zawiśnie na Input. Błedy drugiej: 1. Zupełnie nie potrzebny Gosub 2. Skoro wykorzystujesz bufor to dlaczego nie Bytematch = 13 ? 3. Znowu Input zawiśnie.
Proszę sobie przeczytać o PRINT i INPUT, a nie liczyć na gotowce.
config portd = output jeśli wyjście config portd = input jeśli wejście
Masz błąd na schemacie. AVR nie mają pull-down, więc przycisk powinien zwierać z masą (minusem baterii). Program też nie wydaje się dobry, choć nie znam Bascom. Na moje oko trzeba tak: $regfile = "m8def.dat" $crystal = 8000000 Config Portb = Output Config Portd = Output Config Portd.4 = Input P Alias Pind.4 D Alias Portb.6 Set Portd.4 Do If...
Czesc, Jak zrobic zeby na wejsciu np. Pinc.1 ustawionego na input mozna bylo podlaczyc +5V i to odczytac oczywiscie - kompil. Bascom. pozdrawiam
Może tak zobacz: $regfile = "m8def.dat" $crystal = 8000000 $BAUD = 9600 dim test1 as String dim test2 as String test1 = "1987" Do Input test2 Print "Wprowadzone haslo:" ; test2 If test1 = test2 then Print "Haslo poprawne" Loop End
Czy gdzieś znajdę może opis (bardziej uporządkowany niż w helpie) operacji tekstowych ? Potrzebuję "wyciągnąć" określony string z stringu pobranego przez INPUT. Czyli np - string pobrany przez INPUT ma długość 10 znaków. A ja potrzebuję pierwsze 4 znaki.
Witam, zanim zabierzesz się za pisanie własnej obsługi przerwań do RS232 w Bascomie, to może najpierw spróbuj zrobić to w oparciu o dobrodziejstwa jakie daje ci Bascom. nie znasz poleceń INPUT , INKEY czy PRINT ???? do tego jeszcze może Config Serialin bo w powyższym kodzie odstawiasz niezły "miszmasz" i nie ma co się dziwić, że ci nie działa. Oczywiście...
Nie jestem specem, ale wydaje mi się (na podstawie Helpa), że należy najpierw zadeklarować piny lub porty - jeden jako wejście, drugi jako wyjście. przykład: Config Pind.5 = Input Config Pind.6 = Output lub Config Portd=Input Config Portb=Output
Input w Bascomie czeka na pojawienie się znaku CR, którego ty z PC nie wysyłasz. Wg mnie powinno być Mscomm1.output= "A" + Chr (13) '(ew. popraw skladnię)
dodatkowe pytanie: czy ktoś może mnie naprowadzić co praktycznie oznaczają zaznaczone na czerwono komunikaty? i w ogóle co się dzieje z procesorem-bo nie bardzo mam pewnośc czy dobrze wszystko robie... co oznacza np nieprawidłowa sygnatura? jak mam te komuniakty interpretować... avrdude.exe: error: programm enable: target doesn't answer. 1 avrdude.exe:...
może jakoś tak baud= ..... Config Pin_klawisza = Input Dim N As Byte Dim I As Byte Dim Temp As Byte Dim Znak As String * 2 N = 1 Do Debounce Pin_klawisza , Stan , Generuj , Sub Temp = Inkey() If Temp <> 0 Then Znak = Chr(temp) If Znak = "+" Then Incr N If Znak = "-" Then Decr N Loop Generuj: For I = 1 To...
w każdym uC można zastosować rezystor podciągający , w AVR z powodu dużej rozbieżności wewnętrznych rezystorów jest to zalecane szczególnie jeżeli pin / port pracuje jako wejście MirekCz ma rację nawet nie zauważyłem tego config portx odnosi się dla całego portux , natomiast config pinx.y dla konkretnego pinu portu zastosuj lepiej taki sposób konfiguracji...
Zacznij od wrzucania emu wyświetlaczowi danych z terminala - sprawdź, czy to działa. Jeśli działa - zastanów się nad różnicami. Kidy Input kończy działanie? Nie znam Bascom, ale zgaduję, że po Enter, czyli CR. Czy nadajesz kod CR powysyłanej liczbie?
.. , ale po niej w buforze zostaje znak 10, następnego wiersza, który pobieram za pomocą inkey :D Teraz jest już wszystko OK No ... nie za bardzo jest OK. Czyżby kolega nie wiedział o istnieniu CONFIG INPUT :?: Piotrek
Poza tym jest to funkcja jeśli a nie gdy
You may use any pin that can work as an input pin Przeczytaj to :) input, czyli do odbioru.
Jak zrobic Input w przerwaniach ? mam program dla atmega16 odbierajacy dane w przerwaniach aczkolwiek jest to zrobione w taki sposob ze odczytuje Udr i przypisuje jej wartosc do jakies zmiennej no i nie mam jak "ladnie " wyslac np liczby 53 <przypisywanie rejestru Udr do zmiennej powodoje ze zczytywane sa z klawiatury kody ascii a 53 ma "5">
Bascom 51 przy instrukcjach input,inputbin itd. nie korzysta z przerwań lecz cyklicznie odczytuje rejestr SBUF .Dlatego bardzo rzadko to działa.Jeśli chcesz mieć pewny odbiór to korzystaj z przerwań. A-r.
thx
No to jeżeli tak to działa, to tak mam, z tym, że jako Input ;) Czyli ten rezystor przy przycisku "do kosza"?
Nie będziesz czytał z tych rejestrów wiec wystarczy wysłać dane do rejestru poleceniem Shiftout zamiast tworzyć SPI. Opis podłaczenia w kodzie. [syntax=basic4gl]'----------------------... $regfile = "m32def.dat" $crystal = 4000000 '---------------------------------------...
... zwracam honor kolego zumek , niestety nie wiedziałem, że w bascomie set portb włącza tylko pull'upa ;) ale z drugiej strony skoro nie ma wyraźnej deklaracji w programie na początku, że port ma być wejściowy to bascom sam tak ustawia niezdefiniowane porty? Standardowo po power-up reset , bity w rejestrach portów(DDRx ,PORTx) są wyzerowane.Dla pewności...
Przykład z pliku Help Bascoma: " 'configure PORT D for input mode Config Portd = Input 'reading the PORT, will read the latch, that is the value 'you have written to the PORT. 'This is not the same as reading the logical values on the pins! 'When you want to know the logical state of the attached hardware, 'you MUST use the PIN register. A = Pind U...
Witam. Można programowo zrealizować transmisję RS232 na innych pinach niż piny P3.0 i P3.1. Służą temu własnie te polecenia. Do sprzętowej realizacji powinno się używać poleceń PRINT i INPUT. Pozdrawiam.
Load textmatrix http://www.elektroda.pl/rtvforum/files-r... This Bascom program uses a 3x4 keyboard matrix to input ASCII text! This Bascom program uses a 3x4 keyboard matrix to input ASCII text! The output is placed on the LC-Display and will be saved in the variable TEXT. If one key is pushed several times the characters of that key rotates...
Kilka tematów niżej "zakłócenia 433mhz" [url=http://www.elektroda.pl/rtvforum/vi... podałem przykład dekodowania tych ukladów w Bascom. WArduino będzie niemal identycznie, wykorzystaj funkcję : [syntax=c]int pin = 2; unsigned long duration; void setup() { pinMode(pin, INPUT); } void loop() { duration = pulseIn(pin, HIGH);...
Zapewne dlatego że wykorzystujesz sprzętowe SPI (Config Spi = Hard), a przy sprzętowym SPI sygnał SS (Slave Select input) masz właśnie na pinie PB4.
Bufor nadawczy nie jest zwykle tak potrzebny jak odbiorczy szczególnie jeśli korzystamy z prędkości większych niż 9600 i nie mamy zbyt dużo do nadawania. Jeśli jednak już się stosuje bufor wyjściowy to zapewne przyśpieszy i usprawni proces nadawania - bo często to co mamy do nadania wrzucone jest tylko procedurą PRINT do tegoż bufora , program leci...
Aby zaprogramować układ, potrzebujesz połączyć linie MISO -> MOSI MOSI -> MISO Błąd: przewodów MISO oraz MOSI się nie krzyżuje. miso (master inpult, slave output) oraz mosi (master output slave input) mają inny kierunek w układzie nadrzędnym a inny w podrzędnym.
'Config Portc = Input ' Portc = &B0000000 ' Tow Alias Portc.4 'Q4 Alias Portc.0 ' Q3 Alias Portc.1 ' Q2 Alias Portc.2 'Q1 Alias Portc.3 zrób tak: Config Pinc.4 = Input Tow Alias Pinc.4 Config Pinc.0 = Input Q4 Alias Pinc.0 Config Pinc.1 = Input Q3 Alias Pinc.1 Config Pinc.2 = Input Q2 Alias Pinc.2 Config Pinc.3 = Input Q1 Alias Pinc.3 Eee.. a co to...
Tyle, że kolega popełnił błąd przy konfiguracji pinów: [syntax=basic4gl]Config Portb.0 = Input Config Portb.1 = Input[/syntax] Składnia w helpie mówi co innego.
Nie wiem czy będziesz mógł ustawić Timeout bo jest od wersji 2076. Najwyżej zakomentuj. Reszta powinna działać. Poczytaj o "Config Serialin" i "Ischarwaiting" Tak dokładniej to Input czeka na Enter albo na to co ustawimy żeby czekał (Config Input) Jak Enter nie nadchodzi z powodu jakiegoś błędu to przydaje się Timeout. Najczesciej odbieram dane po jednym...
Tam nic nie ma o znakach CR/LF które to zakończą INPUT. Jeśli liczba bajtów jest stała (7 bajtów) skorzystaj z INPUTBIN.
Przy instrukcji Input "odebranie znaku <CR> (kod 13) kończy wprowadzanie danych dla bieżącej zmiennej." A co jeśli znak <CR> nie zostanie nadany? Wtedy program stoi i czeka!
Chciałbym zapytać jak przesyłać dane tzn. przez polecenie: "Print" i odebranie przez "Input". Chodzi mi o to żeby np. przesyłać dane dotycząc czasu. NA jednym układzie atmega spięta jest przez I2C z zegarem PCF. I chcę to przesłać na drugą atmegę. Czy będzie to wyglądało tak: [syntax=jezyk_programowania]Print "Godzina";godz[/syntax] (nadajnik) , natomiast...
Są odpowiednie pary: PRINT - INPUT PRINTBIN - INPUTBIN PRINTHEX - INPUTHEX Jest jeszcze jedna para: SEROUT - SERIN gdzie zawsze określasz format transmisji.
Rozumiem że te porty ustawiasz jako wejścia (czyli DDRB = 0XFF), Drobna pomyłka bo powinno być DDRB = 0x00, czyli DDRB = 0b00000000. Niby drobiazg, ale początkującemu może namieszać. W procesorach AVR każda końcówka I/O powiązana jest z trzema rejestrami, które to decydują o przeznaczeniu tej końcówki. Te rejestry to: DDR - rejestr kierunku, ustala...
Twój kod jest bardzo prymitywny, nie mam tu na celu naśmiewanie się tylko brak jakichkolwiek zabezpieczeń. O to mi chodzi że jest prosty i można by go trochę uodpornić przynajmniej. Input zawsze blokuje cały program dopóki nie zobaczy "Enter". (Bascom domyślnie wysyła Enter w komendzie Print chyba że użyjesz średnika) Lepiej jest go używać z Ischarwaiting(),...
Ha,ha, czy wyłączyłeś JTAG?(bascom) czy przełączyłeś kwarc na zewnętrzny/wewnętrzny? podstawa sory Balu,nie doczytałem,pisałeś wcześniej o JTAG,sam się naciąłem kilka razy na to ,bezwiednie,bo to takie proste,juz nie mówię o moim podstawowym błędzie(bascom) pomylić input z output: pind.4.... portd.4.... pisząc z rozpędu to taka mała różnica.....,haha,i...
bascom input bascom input bajty bascom capture input
samsung jasny programowanie magic alpine error
pralka miele start identyfikacja elementu
Volvo SH380 – demontaż prawej strony deski rozdzielczej, instrukcja krok po kroku Mercury – opór statora silnika zaburtowego: typowe wartości, modele, diagnostyka