hallo,
Ik wou vandaag eens beginnen om de usart aan te gaan sturen in jal. Dus ik dacht: effe zoeken hoe het werkt en uit proberen. Helaas lukte het zoeken al niet
. Dus mijn vraag is weet iemand misschien hoe ik de usart kan aansturen in jal, of heeft iemand misschien een webstite voor mij waar dat op uit gelegd staat?
alvast bedankt:)
Wouter van Ooijen
Wouter van Ooijen: VOTI webwinkel, docent HvU (Technische Informatica); C++ on mictrocontrollers blog
Mij lukte dat dus ook al niet.
Ik wil een infrarood afstandsbediening maken met JAL en de USART gebruiken, maar krijg niets aan de gang...
Wouter van Ooijen
Wouter van Ooijen: VOTI webwinkel, docent HvU (Technische Informatica); C++ on mictrocontrollers blog
Mij lukte dat dus ook al niet.
Ik wil een infrarood afstandsbediening maken met JAL en de USART gebruiken, maar krijg niets aan de gang...
wat lukt niet? infrarood? de USART? heb je op de jallist filepage gekeken?
Op 10 februari 2003 20:47:47 schreef Wouter van Ooijen:
Kijk eens op de website van Vasile Surducan, of in de files area van de jallist.
ik had die website van Vasile Surducan al gezien maar om eerlijk te zijn snapte ik daar niet al te veel van, maar die jallist is wel een mooi forum!! Ik zal die wanneer ik eens tijd heb eens bekijken.
bedankt
Ik snap helaas nog steeds niet veel van hoe ik de usart kan aansturen in jal, maar weet iemand misschien of er nog een andere manier is om twee pic's ( een 16f877 en een 16f76 )met elkaar te laten comminuceren??
Wouter van Ooijen
Wouter van Ooijen: VOTI webwinkel, docent HvU (Technische Informatica); C++ on mictrocontrollers blog
Op 11 februari 2003 18:48:12 schreef Wouter SSijm:
Ik snap helaas nog steeds niet veel van hoe ik de usart kan aansturen in jal, maar weet iemand misschien of er nog een andere manier is om twee pic's ( een 16f877 en een 16f76 )met elkaar te laten comminuceren??
Vele andere manieren, maar die zijn allemaal ingewikkelder dan het gebruik van een UART. (I2C, SPI, parallel met handshake, verzin zelf een protocol, etc)
Op 11 februari 2003 19:55:44 schreef Wouter van Ooijen:
[...]
Vele andere manieren, maar die zijn allemaal ingewikkelder dan het gebruik van een UART. (I2C, SPI, parallel met handshake, verzin zelf een protocol, etc)
mm jammer
. Ik weet niet of je misschien effe een voorbeeld progammatje voor me wil schrijven dat dan een pic b.v een h zend over de usart en dan een ander progammatje die dan b.v. stroom op een pin zet als er een h op de usart binnen komt. Dan zou ik hem zelf wel kunnen aanpassen. Ik hoop dat je dit voor me wilt doen 
alvast bedankt
Bastiaan
Bachelor of Engineering -- Microcontrollers AVR, PIC (asm, C), PC applicaties (C, C++), Webpages (HTML, CSS, PHP, SQL), Rail-infra engineer
Je moet de datasheet lezen over het gebruik van UART, en dan gewoon de registers instellen zoals daar beschreven staat. Dit in allebij de PIC's zo doen. En zenden maar!
Wouter van Ooijen
Wouter van Ooijen: VOTI webwinkel, docent HvU (Technische Informatica); C++ on mictrocontrollers blog
Op http://www.voti.nl/wisp628 staan voorbeeld programma's. Naast blink-een-LED programma's voor bijna alle flash PICs staat er ook een programma dat een letter ontvangt en dan de hex code ervan terugzend. Misschien kan je dat als basis gebruiken?
harstikke bedankt Wouter!
alleen heb ik nog heel even een vraagje over het bestand a877-b6t.jal. hier staat op een gegeven moment dit: asynch_send( x ). hier mee kun je dus een x verzenden, maar nu heb ik even aan mijn pa gevraagd hoe je dan een bepaalde pin hoog maakt als hij b.v een a binnen krijgt. Hij zij toen dat je dat zo moest doen:
asynch_receive( c )
if c == a then
pin_b7 = high
ik denk wel dat dit klopt want bij het compileren gaf hij geen foutmelding, maar ik weet het niet zeker of dit klopt.
en dan heb ik gelijk nog een vraagje: mag ik de pinnen c6 en c7 veranderen door andere i/o pinnen of niet?
Wouter van Ooijen
Wouter van Ooijen: VOTI webwinkel, docent HvU (Technische Informatica); C++ on mictrocontrollers blog
Op 13 februari 2003 17:24:16 schreef Wouter SSijm:
ik denk wel dat dit klopt want bij het compileren gaf hij geen foutmelding
Het klopt inderdaad (mits die pin een output, natuurlijk. Maar het zal ik ROFL (jargon voor 'lag me dood') van je redenering.
Op 13 februari 2003 17:24:16 schreef Wouter SSijm:
mag ik de pinnen c6 en c7 veranderen door andere i/o pinnen of niet?
Ik neem aan dat je b6 en b7 bedoeld? Ja, dat mag.
nogmaals harstikke bedankt Wouter!
wel fijn dat je die pennen gewoon mag veranderen, maakt het ontwerp voor de print alweer makkelijker!
ik heb nu dit progammatje geschreven om een letter weg te zenden:
include f877_10
include jlib
const asynch_baudrate = 1200
const asynch_polarity = active_low
const asynch_parity = parity_none
const asynch_stopbits = 2
var volatile bit asynch_in_pin is pin_c1
var volatile bit asynch_in_direction is pin_c1_direction
var volatile bit asynch_out_pin is pin_d7
var volatile bit asynch_out_direction is pin_d7_direction
include seriali
var byte a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z
pin_c2_direction = output
pin_c3_direction = output
pin_c4_direction = output
pin_c5_direction = output
pin_c6_direction = output
pin_c7_direction = output
pin_b0_direction = output
pin_b1_direction = output
pin_b2_direction = output
pin_b3_direction = output
pin_b4_direction = output
pin_b5_direction = output
pin_b6_direction = output
pin_b7_direction = output
forever loop
asynch_send( a )
delay_1s ( 1 )
asynch_send( b )
delay_1s ( 1 )
end loop
en deze voor de ontvanger:
include f877_10
include jlib
const asynch_baudrate = 1200
const asynch_polarity = active_low
const asynch_parity = parity_none
const asynch_stopbits = 2
var volatile bit asynch_in_pin is pin_a0
var volatile bit asynch_in_direction is pin_a0_direction
var volatile bit asynch_out_pin is pin_c1
var volatile bit asynch_out_direction is pin_c1_direction
include seriali
var byte a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q
pin_c2_direction = output
pin_c3_direction = output
pin_c4_direction = output
pin_c5_direction = output
pin_c6_direction = output
pin_c7_direction = output
pin_b0_direction = output
pin_b1_direction = output
pin_b2_direction = output
pin_b3_direction = output
pin_b4_direction = output
pin_b5_direction = output
pin_b6_direction = output
pin_b7_direction = output
forever loop
asynch_receive( q )
if q == a then
pin_b7 = low
pin_b6 = low
pin_b5 = low
pin_b4 = low
pin_b3 = low
pin_c2 = low
pin_c3 = high
end if
if q == b then
pin_b6 = high
pin_b7 = low
pin_b3 = low
pin_b2 = high
pin_b1 = high
pin_b5 = high
pin_b4 = high
end if
end loop
alleen doet hij helaas nog niet veel ( er komt geen stroom op de juiste pennen, en op andere die niet moeten juist wel). Weet iemand misschien waar dit aan kan liggen?