Code: Select all
## works
import uos, utime
import uasyncio as asyncio
from machine import UART
uart0 = UART(0)
uart1 = UART(1, 9600)
# res = ""
GPRMC = ""
GPGGA = ""
print("starting now")
utime.sleep(1)
uos.dupterm(None, 1)
uart0.init(9600, rxbuf=80)
uart1.write("should be seen in uart1")
async def sender():
global GPRMC
global GPGGA
swriter = asyncio.StreamWriter(uart1, {})
while True:
# uart1.write("**")
await swriter.awrite(GPRMC)
await swriter.awrite(GPGGA)
# await asyncio.sleep_ms(500)
await asyncio.sleep_ms(1200)
async def receiver():
global GPRMC
global GPGGA
sreader = asyncio.StreamReader(uart0)
# swriter = asyncio.StreamWriter(uart1, {})
uart1.write("async reader")
while True:
GPRMC = ""
GPRMC = await sreader.readline()
GPGGA = await sreader.readline()
# await swriter.awrite(res)
loop = asyncio.get_event_loop()
# loop.create_task(sender())
loop.create_task(receiver())
loop.create_task(sender())
loop.run_forever()