Studying global-interrupts Demo
?
?

Keyboard Navigation

Global Keys

[, < / ], > Jump to previous / next episode
W, K, P / S, J, N Jump to previous / next marker
t / T Toggle theatre / SUPERtheatre mode
V Revert filter to original state Y Select link (requires manual Ctrl-c)

Menu toggling

q Quotes r References f Filter y Link c Credits

In-Menu 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

Filter and Link Menus

z Toggle filter / linking mode

Credits Menu

Enter Open URL (in new tab)
0:07Recap and set the stage for the day
0:07Recap and set the stage for the day
0:07Recap and set the stage for the day
1:08bananathemonkey It looks like it's a single bit mask for a 32b field where the lower 16b are reserved for something (local interrupts, maybe?)
🗪
1:08bananathemonkey It looks like it's a single bit mask for a 32b field where the lower 16b are reserved for something (local interrupts, maybe?)
🗪
1:08bananathemonkey It looks like it's a single bit mask for a 32b field where the lower 16b are reserved for something (local interrupts, maybe?)
🗪
1:48Continue to study local_interrupts.c on the software and timer interrupt handler, and debouncing
📖
1:48Continue to study local_interrupts.c on the software and timer interrupt handler, and debouncing
📖
1:48Continue to study local_interrupts.c on the software and timer interrupt handler, and debouncing
📖
3:53riskyfive Because the metal actually physically bounces, before making permanent electrical contact
🗪
3:53riskyfive Because the metal actually physically bounces, before making permanent electrical contact
🗪
3:53riskyfive Because the metal actually physically bounces, before making permanent electrical contact
🗪
5:03riskyfive A button is not a piece of solid metal, it has two faces that make contact
🗪
5:03riskyfive A button is not a piece of solid metal, it has two faces that make contact
🗪
5:03riskyfive A button is not a piece of solid metal, it has two faces that make contact
🗪
6:17bananathemonkey A 0.5s debouncer makes sure it has the same state continuously for 0.5s before it takes that value
🗪
6:17bananathemonkey A 0.5s debouncer makes sure it has the same state continuously for 0.5s before it takes that value
🗪
6:17bananathemonkey A 0.5s debouncer makes sure it has the same state continuously for 0.5s before it takes that value
🗪
7:02riskyfive Yes, because the button is not digital, and the signal goes up and down a few times before stabilizing
🗪
7:02riskyfive Yes, because the button is not digital, and the signal goes up and down a few times before stabilizing
🗪
7:02riskyfive Yes, because the button is not digital, and the signal goes up and down a few times before stabilizing
🗪
7:18On input handling and exploiting the code for it in A Link to the Past1
7:18On input handling and exploiting the code for it in A Link to the Past1
7:18On input handling and exploiting the code for it in A Link to the Past1
9:16riskyfive It doesn't need 0.5s, obviously
🗪
9:16riskyfive It doesn't need 0.5s, obviously
🗪
9:16riskyfive It doesn't need 0.5s, obviously
🗪
9:21bananathemonkey So you have to hold the button for at least 0.5s for it to be recognized in this case, it would be really bad for gaming
🗪
9:21bananathemonkey So you have to hold the button for at least 0.5s for it to be recognized in this case, it would be really bad for gaming
🗪
9:21bananathemonkey So you have to hold the button for at least 0.5s for it to be recognized in this case, it would be really bad for gaming
🗪
9:48Continue studying local_interrupts.c on debouncing
📖
9:48Continue studying local_interrupts.c on debouncing
📖
9:48Continue studying local_interrupts.c on debouncing
📖
14:52Briefly check out the product page for the Artix-7 35T Arty FPGA Evaluation Kit2
14:52Briefly check out the product page for the Artix-7 35T Arty FPGA Evaluation Kit2
14:52Briefly check out the product page for the Artix-7 35T Arty FPGA Evaluation Kit2
16:53Plug changes to Twitch channel3 including a new way to support the series via streamlabs4
16:53Plug changes to Twitch channel3 including a new way to support the series via streamlabs4
16:53Plug changes to Twitch channel3 including a new way to support the series via streamlabs4
20:10Determine that we have studied local_interrupts.c sufficiently and try to compile it, knowing we won't be able to upload it to our HiFive1
20:10Determine that we have studied local_interrupts.c sufficiently and try to compile it, knowing we won't be able to upload it to our HiFive1
20:10Determine that we have studied local_interrupts.c sufficiently and try to compile it, knowing we won't be able to upload it to our HiFive1
22:45Embark on studying global_interrupts.c
📖
22:45Embark on studying global_interrupts.c
📖
22:45Embark on studying global_interrupts.c
📖
32:14How global_interrupts.c uses a PWM as a timer interrupt for debouncing
📖
32:14How global_interrupts.c uses a PWM as a timer interrupt for debouncing
📖
32:14How global_interrupts.c uses a PWM as a timer interrupt for debouncing
📖
36:39Study main() in global_interrupts.c
📖
36:39Study main() in global_interrupts.c
📖
36:39Study main() in global_interrupts.c
📖
37:44riskyfive Good night
🗪
37:44riskyfive Good night
🗪
37:44riskyfive Good night
🗪
37:49Continue studying main() in global_interrupts.c, setting up the PWM and LEDs
📖
37:49Continue studying main() in global_interrupts.c, setting up the PWM and LEDs
📖
37:49Continue studying main() in global_interrupts.c, setting up the PWM and LEDs
📖
41:59Hunt for wfi in the RISC-V reference card and documentation
📖
41:59Hunt for wfi in the RISC-V reference card and documentation
📖
41:59Hunt for wfi in the RISC-V reference card and documentation
📖
46:01Read about Wait for Interrupt (WFI) in the Privileged ISA Specification5
📖
46:01Read about Wait for Interrupt (WFI) in the Privileged ISA Specification5
📖
46:01Read about Wait for Interrupt (WFI) in the Privileged ISA Specification5
📖
53:26Determine that we understand global_interrupts.c, and consider what to review
📖
53:26Determine that we understand global_interrupts.c, and consider what to review
📖
53:26Determine that we understand global_interrupts.c, and consider what to review
📖
56:12Review the PWM Configuration Register (pwmcfg)6
📖
56:12Review the PWM Configuration Register (pwmcfg)6
📖
56:12Review the PWM Configuration Register (pwmcfg)6
📖
1:01:37Read about the Deglitch and Sticky circuitry, and the pwmscale field7
📖
1:01:37Read about the Deglitch and Sticky circuitry, and the pwmscale field7
📖
1:01:37Read about the Deglitch and Sticky circuitry, and the pwmscale field7
📖
1:07:44Read how global_interrupts.c sets up the PWM_CMP registers for debouncing
📖
1:07:44Read how global_interrupts.c sets up the PWM_CMP registers for debouncing
📖
1:07:44Read how global_interrupts.c sets up the PWM_CMP registers for debouncing
📖
1:10:38Wrap it up with the determination to continue studying this in another episode
1:10:38Wrap it up with the determination to continue studying this in another episode
1:10:38Wrap it up with the determination to continue studying this in another episode