Reading about GPIO ⚠ Click here to regain focus ⚠
?
?

Keyboard Navigation

Global Keys

W, A, P / S, D, N Jump to previous / next marker
t / T Toggle theatre / SUPERtheatre mode
z Toggle filter mode V Revert filter to original state

Menu toggling

q Quotes r References f Filter c Credits

Movement

a
w
s
d
h j k l


Quotes and References Menus

Enter Jump to timecode

Quotes, References and Credits Menus

o Open URL (in new tab)

Filter Menu

x, Space Toggle category and focus next
X, ShiftSpace Toggle category and focus previous
v Invert topics / media as per focus

Credits Menu

Enter Open URL (in new tab)
0:07Plug SiFive's shout-out of the interview with Andrew and Yunsup1
0:07Plug SiFive's shout-out of the interview with Andrew and Yunsup1
0:07Plug SiFive's shout-out of the interview with Andrew and Yunsup1
0:22Consult the forums for Megan's advice on finding the OTP2
📖
0:22Consult the forums for Megan's advice on finding the OTP2
📖
0:22Consult the forums for Megan's advice on finding the OTP2
📖
1:31Consult the forums for Megan's advice on enabling the HiFive1 to reliably start our programs3
📖
1:31Consult the forums for Megan's advice on enabling the HiFive1 to reliably start our programs3
📖
1:31Consult the forums for Megan's advice on enabling the HiFive1 to reliably start our programs3
📖
4:29Open our files
4:29Open our files
4:29Open our files
8:42Enable uart_init() to perform a busy loop
8:42Enable uart_init() to perform a busy loop
8:42Enable uart_init() to perform a busy loop
13:39Run our program to see similarly sketchy outputting behaviour
🏃
13:39Run our program to see similarly sketchy outputting behaviour
🏃
13:39Run our program to see similarly sketchy outputting behaviour
🏃
14:08Enable uart_init() to loop over INT_MAX4
14:08Enable uart_init() to loop over INT_MAX4
14:08Enable uart_init() to loop over INT_MAX4
17:18Run our program, see no blinking lights and wonder why
🏃
17:18Run our program, see no blinking lights and wonder why
🏃
17:18Run our program, see no blinking lights and wonder why
🏃
20:31See the lights, the let the program run for a little bit
🏃
20:31See the lights, the let the program run for a little bit
🏃
20:31See the lights, the let the program run for a little bit
🏃
21:28Try looping over INT_MAX on the dev machine
21:28Try looping over INT_MAX on the dev machine
21:28Try looping over INT_MAX on the dev machine
22:21Run our test and estimate that it took five seconds
🏃
22:21Run our test and estimate that it took five seconds
🏃
22:21Run our test and estimate that it took five seconds
🏃
22:56See the properly printed output of print_instructions()
🏃
22:56See the properly printed output of print_instructions()
🏃
22:56See the properly printed output of print_instructions()
🏃
23:05Try to make uart_init() loop over a smaller number
23:05Try to make uart_init() loop over a smaller number
23:05Try to make uart_init() loop over a smaller number
24:14Run our program and see that that worked perfectly
🏃
24:14Run our program and see that that worked perfectly
🏃
24:14Run our program and see that that worked perfectly
🏃
24:57Enable print_instructions() to print out the data at 0x21FE45
24:57Enable print_instructions() to print out the data at 0x21FE45
24:57Enable print_instructions() to print out the data at 0x21FE45
26:00popcorn0x90 0x7FFF. I thought it would be 0xFFFF
🗪
26:00popcorn0x90 0x7FFF. I thought it would be 0xFFFF
🗪
26:00popcorn0x90 0x7FFF. I thought it would be 0xFFFF
🗪
27:01Self-plug the episode on ripple carry adders6
27:01Self-plug the episode on ripple carry adders6
27:01Self-plug the episode on ripple carry adders6
27:50Continue with print_instructions()
27:50Continue with print_instructions()
27:50Continue with print_instructions()
28:22Run our program and see a potentially valid Unix timestamp
🏃
28:22Run our program and see a potentially valid Unix timestamp
🏃
28:22Run our program and see a potentially valid Unix timestamp
🏃
29:18Note that the OTP content locations are offsets7
📖
29:18Note that the OTP content locations are offsets7
📖
29:18Note that the OTP content locations are offsets7
📖
30:32Consult the Platform Reference Manual on the E300 Platform Memory Map8
📖
30:32Consult the Platform Reference Manual on the E300 Platform Memory Map8
📖
30:32Consult the Platform Reference Manual on the E300 Platform Memory Map8
📖
31:30Consult the E3 Coreplex Memory Map table for the address of the OTP read port9
📖
31:30Consult the E3 Coreplex Memory Map table for the address of the OTP read port9
📖
31:30Consult the E3 Coreplex Memory Map table for the address of the OTP read port9
📖
32:49miblo Well, it appears to be 0x7FFFFFFF or 1 << 31 - 1
🗪
32:49miblo Well, it appears to be 0x7FFFFFFF or 1 << 31 - 1
🗪
32:49miblo Well, it appears to be 0x7FFFFFFF or 1 << 31 - 1
🗪
33:25Recap the intuition on two's complement, that you count with zeros
33:25Recap the intuition on two's complement, that you count with zeros
33:25Recap the intuition on two's complement, that you count with zeros
34:42Report the value at 0x21FE4 in the forums10
34:42Report the value at 0x21FE4 in the forums10
34:42Report the value at 0x21FE4 in the forums10
37:06Request for viewers' board ID values at 0x21FE4
37:06Request for viewers' board ID values at 0x21FE4
37:06Request for viewers' board ID values at 0x21FE4
38:11miblo Yeah, I don't have the SDK installed yet, so I'll have to report back
🗪
38:11miblo Yeah, I don't have the SDK installed yet, so I'll have to report back
🗪
38:11miblo Yeah, I don't have the SDK installed yet, so I'll have to report back
🗪
38:32Scan quickly through the manuals looking for GPIO documentation
38:32Scan quickly through the manuals looking for GPIO documentation
38:32Scan quickly through the manuals looking for GPIO documentation
41:15Read about General Purpose Input/Output Controller (GPIO) in the Platform Reference Manual11
📖
41:15Read about General Purpose Input/Output Controller (GPIO) in the Platform Reference Manual11
📖
41:15Read about General Purpose Input/Output Controller (GPIO) in the Platform Reference Manual11
📖
47:02Read about level-triggered and edge-trigger interrupts on Wikipedia12 in conjunction with Megan's post about how the UART works13
📖
47:02Read about level-triggered and edge-trigger interrupts on Wikipedia12 in conjunction with Megan's post about how the UART works13
📖
47:02Read about level-triggered and edge-trigger interrupts on Wikipedia12 in conjunction with Megan's post about how the UART works13
📖
51:11Continue reading about the GPIO's Interrupts in the Platform Reference Manual14
📖
51:11Continue reading about the GPIO's Interrupts in the Platform Reference Manual14
📖
51:11Continue reading about the GPIO's Interrupts in the Platform Reference Manual14
📖
54:41Research GPIO pull-up15
📖
54:41Research GPIO pull-up15
📖
54:41Research GPIO pull-up15
📖
57:05Continue reading about Internal Pull-Ups and the remaining information about Interrupts in the Platform Reference Manual16
📖
57:05Continue reading about Internal Pull-Ups and the remaining information about Interrupts in the Platform Reference Manual16
📖
57:05Continue reading about Internal Pull-Ups and the remaining information about Interrupts in the Platform Reference Manual16
📖
1:00:27We are out time for today
1:00:27We are out time for today
1:00:27We are out time for today