EE445M RTOS
Taken at the University of Texas Spring 2015
test-uart.c
Go to the documentation of this file.
1 /* -*- mode: c; c-basic-offset: 4; -*- */
2 /* Created by Hershal Bhave and Eric Crosson on 2015-01-24 */
3 /* Revision History: Look in Git FGT */
4 
5 /* Standard Libs */
6 #include <stdint.h>
7 #include <stdbool.h>
8 
9 /* TI Includes */
10 #include "inc/hw_ints.h"
11 #include "inc/hw_memmap.h"
12 
13 /* Driverlib Includes */
14 #include "driverlib/gpio.h"
15 #include "driverlib/interrupt.h"
16 #include "driverlib/pin_map.h"
17 #include "driverlib/sysctl.h"
18 
19 #include "libuart/uart.h"
20 #include "libhw/hardware.h"
21 
22 #define HEARTBEAT_MODAL
23 #include "libheart/heartbeat.h"
24 
25 uint32_t red_work = 0;
26 uint32_t blue_work = 0;
27 uint32_t green_work = 0;
28 
29 void led_blink_red() {
30  while (1) {
31  ++red_work;
35  }
36 }
37 
39  /* while (1) { */
40  ++green_work;
43  /* os_surrender_context(); */
44  /* } */
45 }
46 
48  while (1) {
49  ++blue_work;
53  }
54 }
55 
60 
61  char recv = note._char;
62 
63  uart_send_char(recv);
65 }
66 
70 int main(void) {
71 
74 
76 
77  heart_init();
78  heart_init_(GPIO_PORTF_BASE, GPIO_PIN_1);
79  heart_init_(GPIO_PORTF_BASE, GPIO_PIN_2);
80  heart_init_(GPIO_PORTF_BASE, GPIO_PIN_3);
81 
84 
89 
90  /* Prompt for text to be entered. */
91  uart_send_string("Enter text:");
92 
94  os_launch();
96 }
void uart_send_string(const char *text)
Definition: uart.c:71
void GPIOPinWrite(uint32_t ui32Port, uint8_t ui8Pins, uint8_t ui8Val)
Definition: gpio.c:1038
void led_blink_red()
Definition: test-uart.c:29
#define SYSCTL_OSC_MAIN
Definition: sysctl.h:378
void led_blink_green()
Definition: test-uart.c:38
#define SYSCTL_USE_OSC
Definition: sysctl.h:350
#define GPIO_PIN_2
Definition: gpio.h:62
#define SYSCTL_XTAL_16MHZ
Definition: sysctl.h:372
#define GPIO_PIN_1
Definition: gpio.h:61
#define UART_DEFAULT_BAUD_RATE
Definition: uart.h:14
void os_threading_init()
Definition: os.c:34
void schedule(task_t task, frequency_t frequency, DEADLINE_TYPE seriousness)
Definition: os.c:386
void uart_send_char(const char text)
Definition: uart.c:59
void heart_init()
Initialize for visible transformation.
Definition: heartbeat.h:49
uint32_t red_work
Definition: test-uart.c:25
void os_launch()
Definition: os.c:161
#define postpone_death()
Definition: nexus.h:40
#define INT_UART0
Definition: hw_ints.h:451
uint32_t blue_work
Definition: test-uart.c:26
bool IntMasterDisable(void)
Definition: interrupt.c:249
#define uart_metadata_init(_baud_rate, _channel, _interrupt)
Definition: uart.h:29
#define GPIO_PIN_3
Definition: gpio.h:63
bool IntMasterEnable(void)
#define os_surrender_context()
Definition: os.h:142
#define hw_init_and_subscribe(type, metadata, pseudo_isr)
Definition: hardware.h:149
void uart_handler(notification note)
Definition: test-uart.c:59
#define Hz
Definition: nexus.h:45
#define UART0_BASE
Definition: hw_memmap.h:61
int main(void)
Definition: test-uart.c:70
#define SYSCTL_SYSDIV_1
Definition: sysctl.h:221
void SysCtlClockSet(uint32_t ui32Config)
Definition: sysctl.c:2532
int32_t GPIOPinRead(uint32_t ui32Port, uint8_t ui8Pins)
Definition: gpio.c:1006
void led_blink_blue()
Definition: test-uart.c:47
char _char
Definition: notify.h:25
uint32_t green_work
Definition: test-uart.c:27
void hw_daemon(void)
Definition: hardware.c:172
#define GPIO_PORTF_BASE
Definition: hw_memmap.h:74