summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 6027820)
raw | patch | inline | side by side (parent: 6027820)
author | Borja Martinez <borja.martinez@gmail.com> | |
Fri, 30 Sep 2016 07:31:52 +0000 (09:31 +0200) | ||
committer | Borja Martinez <borja.martinez@gmail.com> | |
Fri, 30 Sep 2016 07:31:52 +0000 (09:31 +0200) |
Basic-Test-Package/BSL/MSP430/Boot_MSP430_Chain/main.c | patch | blob | history | |
Basic-Test-Package/BSL/MSP430/Boot_MSP430_Dual/main.c | patch | blob | history |
diff --git a/Basic-Test-Package/BSL/MSP430/Boot_MSP430_Chain/main.c b/Basic-Test-Package/BSL/MSP430/Boot_MSP430_Chain/main.c
index c7e5407fc13c7b656a6c2f2d06ac810e51b97ae8..f378fdf54059254867377fbeb4b7c8bc445126a3 100644 (file)
// BOOT_IN2 interrupt clear and disable
P1IFG &=~ (BOOT_IN1);
- P1IE &=~ (BOOT_IN1);
- flag=1;
+ // RESET_IN1 should be low
+ if ((P1IN & RESET_IN1) == 0) {
- /* Disable CC2650 BSL */
- P1IFG &=~(RESET_IN2|BOOT_IN2);
- P1IE &=~(RESET_IN2|BOOT_IN2);
+ // BOOT_IN2 interrupt disable
+ P1IE &=~ (BOOT_IN1);
+
+ flag=1;
+
+ /* Disable CC2650 BSL */
+ P1IFG &=~(RESET_IN2|BOOT_IN2);
+ P1IE &=~(RESET_IN2|BOOT_IN2);
+
+ /* Enable Reset High to Low */
+ P1IES |= (RESET_IN1);
+ P1IFG &=~ (RESET_IN1);
+ P1IE |= (RESET_IN1);
- /* Enable Reset High to Low */
- P1IES |= (RESET_IN1);
- P1IFG &=~ (RESET_IN1);
- P1IE |= (RESET_IN1);
- // RESET_IN1 should be low
- if ((P1IN & RESET_IN1) == 0) {
bootloader_active = true;
}
}
// BOOT_IN2 interrupt clear and disable
P1IFG &=~ (BOOT_IN2);
- P1IE &=~ (BOOT_IN2);
- flag=1;
+ // RESET_IN2 should be low
+ if ((P1IN & RESET_IN2) == 0) {
- /* Disable MCP432 Boot */
- P1IFG &=~(RESET_IN1|BOOT_IN1);
- P1IE &=~(RESET_IN1|BOOT_IN1);
+ P1IE &=~ (BOOT_IN2);
+
+ flag=1;
+
+ /* Disable MCP432 Boot */
+ P1IFG &=~(RESET_IN1|BOOT_IN1);
+ P1IE &=~(RESET_IN1|BOOT_IN1);
+
+ /* Enable Reset High to Low */
+ P1IES |= (RESET_IN2);
+ P1IFG &=~ (RESET_IN2);
+ P1IE |= (RESET_IN2);
- /* Enable Reset High to Low */
- P1IES |= (RESET_IN2);
- P1IFG &=~ (RESET_IN2);
- P1IE |= (RESET_IN2);
- // RESET_IN2 should be low
- if ((P1IN & RESET_IN2) == 0) {
bootloader_active = true;
}
}
/* Unknown Sequence: Disable PIOs, Wait Timout */
if(flag==0){
P1IE &=~ (RESET_IN1|RESET_IN2|BOOT_IN1|BOOT_IN2);
+ bootloader_active = true; // Ensure LMP3 (Timer active)
+
P1IFG = 0;
}
diff --git a/Basic-Test-Package/BSL/MSP430/Boot_MSP430_Dual/main.c b/Basic-Test-Package/BSL/MSP430/Boot_MSP430_Dual/main.c
index fe0983ef003ac3e5ead53e2975f3b7afec383b3a..fa968da9369f41c90b15f3ba4645deeb64ae5364 100644 (file)
((P1IN & BOOT_IN1) == 0) &&
((P1IES & BOOT_IN1) == BOOT_IN1)) {
- // BOOT_IN2 interrupt clear and disable
+ // BOOT_IN2 interrupt clear
P1IFG &=~ (BOOT_IN1);
- P1IE &=~ (BOOT_IN1);
- flag=1;
+ // RESET_IN1 should be low
+ if ((P1IN & RESET_IN1) == 0) {
- /* Disable CC2650 BSL */
- P1IFG &=~(RESET_IN2|BOOT_IN2);
- P1IE &=~(RESET_IN2|BOOT_IN2);
+ // BOOT_IN2 interrupt disable
+ P1IE &=~ (BOOT_IN1);
- /* Enable Reset High to Low */
- P1IES |= (RESET_IN1);
- P1IFG &=~ (RESET_IN1);
- P1IE |= (RESET_IN1);
+ flag=1;
+
+ /* Disable CC2650 BSL */
+ P1IFG &=~(RESET_IN2|BOOT_IN2);
+ P1IE &=~(RESET_IN2|BOOT_IN2);
+
+ /* Enable Reset High to Low */
+ P1IES |= (RESET_IN1);
+ P1IFG &=~ (RESET_IN1);
+ P1IE |= (RESET_IN1);
- // RESET_IN1 should be low
- if ((P1IN & RESET_IN1) == 0) {
bootloader_active = true;
}
}
((P1IN & BOOT_IN2) == 0) &&
((P1IES & BOOT_IN2) == BOOT_IN2)) {
- // BOOT_IN2 interrupt clear and disable
+ // BOOT_IN2 interrupt clear
P1IFG &=~ (BOOT_IN2);
- P1IE &=~ (BOOT_IN2);
- flag=1;
+ // RESET_IN2 should be low
+ if ((P1IN & RESET_IN2) == 0) {
- /* Disable MCP432 Boot */
- P1IFG &=~(RESET_IN1|BOOT_IN1);
- P1IE &=~(RESET_IN1|BOOT_IN1);
+ // BOOT_IN2 interrupt disable
+ P1IE &=~ (BOOT_IN2);
+
+ flag=1;
+
+ /* Disable MCP432 Boot */
+ P1IFG &=~(RESET_IN1|BOOT_IN1);
+ P1IE &=~(RESET_IN1|BOOT_IN1);
+
+ /* Enable Reset High to Low */
+ P1IES |= (RESET_IN2);
+ P1IFG &=~ (RESET_IN2);
+ P1IE |= (RESET_IN2);
- /* Enable Reset High to Low */
- P1IES |= (RESET_IN2);
- P1IFG &=~ (RESET_IN2);
- P1IE |= (RESET_IN2);
- // RESET_IN2 should be low
- if ((P1IN & RESET_IN2) == 0) {
bootloader_active = true;
}
}
/* Unknown Sequence: Disable PIOs, Wait Timout */
if(flag==0){
P1IE &=~ (RESET_IN1|RESET_IN2|BOOT_IN1|BOOT_IN2);
+ bootloader_active = true;
P1IFG = 0;
}