Пример #1
0
 def test_decode_packed_bcd(self):
     """Test packed BCD decoder"""
     self.assertEqual(Utils.decode_packed_bcd(0x01), 1)
     self.assertEqual(Utils.decode_packed_bcd(0x10), 10)
     self.assertEqual(Utils.decode_packed_bcd(0x11), 11)
     self.assertEqual(Utils.decode_packed_bcd(0x25), 25)
     self.assertEqual(Utils.decode_packed_bcd(0x99), 99)
Пример #2
0
 def test_decode_packed_bcd(self):
     """Test packed BCD decoder"""
     self.assertEqual(Utils.decode_packed_bcd(0x01), 1)
     self.assertEqual(Utils.decode_packed_bcd(0x10), 10)
     self.assertEqual(Utils.decode_packed_bcd(0x11), 11)
     self.assertEqual(Utils.decode_packed_bcd(0x25), 25)
     self.assertEqual(Utils.decode_packed_bcd(0x99), 99)
Пример #3
0
 def set_watchdog_prescale(self, val):
     val = Utils.to_int(val)
     wd_vals = {2: 0, 4: 1, 8: 2, 16: 3, 32: 4, 64: 5, 128: 6, 256: 7}
     if val not in wd_vals.keys():
         raise ValueError("must be one of %s" % list(wd_vals.keys()))
     self.msr[3] &= 0xf8
     self.msr[3] |= wd_vals[val]
Пример #4
0
 def set_flash_split(self, val):
     num_val = Utils.to_int(val)
     if num_val < 512 or num_val > 65024 or (num_val % 512) != 0:
         raise ValueError(
             "must be between 512 and 65024 bytes and a multiple of 512 bytes"
         )
     self.msr[4] = num_val // 256
Пример #5
0
 def set_osc_stable_delay(self, val):
     val = Utils.to_int(val)
     osc_vals = {4096: 0, 8192: 1, 16384: 2, 32768: 3}
     if val not in osc_vals.keys():
         raise ValueError("must be one of %s" % list(osc_vals.keys()))
     self.msr[0] &= 0xcf
     self.msr[0] |= osc_vals[val] << 4
Пример #6
0
 def set_watchdog_prescale(self, val):
     val = Utils.to_int(val)
     wd_vals = {2: 0, 4: 1, 8: 2, 16: 3, 32: 4, 64: 5, 128: 6, 256: 7}
     if val not in wd_vals.keys():
         raise ValueError("must be one of %s" % list(wd_vals.keys()))
     self.msr[0] &= 0xf8
     self.msr[0] |= wd_vals[val]
Пример #7
0
 def set_osc_stable_delay(self, val):
     val = Utils.to_int(val)
     osc_vals = {4096: 0, 8192: 1, 16384: 2, 32768: 3}
     if val not in osc_vals.keys():
         raise ValueError("must be one of %s" % list(osc_vals.keys()))
     self.msr[0] &= 0xcf
     self.msr[0] |= osc_vals[val] << 4
Пример #8
0
 def test_to_int(self):
     """Test wrapped integer conversion"""
     self.assertEqual(Utils.to_int("2"), 2)
     self.assertEqual(Utils.to_int("0x10"), 16)
     with self.assertRaises(ValueError):
         Utils.to_int("a")
     with self.assertRaises(ValueError):
         Utils.to_int("")
     with self.assertRaises(ValueError):
         Utils.to_int(None)
Пример #9
0
 def test_to_int(self):
     """Test wrapped integer conversion"""
     self.assertEqual(Utils.to_int("2"), 2)
     self.assertEqual(Utils.to_int("0x10"), 16)
     with self.assertRaises(ValueError):
         Utils.to_int("a")
     with self.assertRaises(ValueError):
         Utils.to_int("")
     with self.assertRaises(ValueError):
         Utils.to_int(None)
Пример #10
0
 def set_watchdog(self, val):
     val = Utils.to_bool(val)
     self.msr &= 0x7f
     self.msr |= 0x80 if not bool(val) else 0x00
Пример #11
0
 def set_low_voltage_detect(self, val):
     val = Utils.to_bool(val)
     self.msr[0] &= 0xbf
     self.msr[0] |= 0x40 if not val else 0x00
Пример #12
0
 def set_uart1_remap(self, val):
     val = Utils.to_bool(val)
     self.msr[1] &= 0xbf
     self.msr[1] |= 0x40 if val else 0x00
Пример #13
0
 def set_ale(self, val):
     val = Utils.to_bool(val)
     self.msr &= 0xdf
     self.msr |= 0x20 if bool(val) else 0x00
Пример #14
0
 def set_pindetect(self, val):
     val = Utils.to_bool(val)
     self.msr[3] &= 0xfe
     self.msr[3] |= 0x01 if not val else 0x00
Пример #15
0
 def set_pindetect(self, val):
     val = Utils.to_bool(val)
     self.msr &= 0xfb
     self.msr |= 0x04 if not bool(val) else 0x00
Пример #16
0
 def set_low_voltage(self, val):
     val = Utils.to_int(val)
     if val not in range(0, 4):
         raise ValueError("must be one of %s" % list(range(0, 4)))
     self.msr[2] &= 0xfc
     self.msr[2] |= 3 - val
Пример #17
0
 def set_lvrs(self, val):
     val = Utils.to_bool(val)
     self.msr[1] &= 0xbf
     self.msr[1] |= 0x40 if not val else 0x00
Пример #18
0
 def set_low_voltage_detect(self, val):
     val = Utils.to_bool(val)
     self.msr[0] &= 0xbf
     self.msr[0] |= 0x40 if not val else 0x00
Пример #19
0
 def set_lvrs(self, val):
     val = Utils.to_bool(val)
     self.msr[2] &= 0xbf
     self.msr[2] |= 0x40 if not val else 0x00
Пример #20
0
 def set_watchdog_idle(self, val):
     val = Utils.to_bool(val)
     self.msr[3] &= 0xf7
     self.msr[3] |= 0x08 if not val else 0x00
Пример #21
0
 def set_watchdog(self, val):
     val = Utils.to_bool(val)
     self.msr[3] &= 0xdf
     self.msr[3] |= 0x20 if not val else 0x00
Пример #22
0
 def set_reset_pin_enabled(self, val):
     val = Utils.to_bool(val)
     self.msr[2] &= 0xef
     self.msr[2] |= 0x10 if not bool(val) else 0x00
Пример #23
0
 def set_reset_pin_enabled(self, val):
     val = Utils.to_bool(val)
     self.msr[2] &= 0xef
     self.msr[2] |= 0x10 if not bool(val) else 0x00
Пример #24
0
 def set_ee_erase(self, val):
     val = Utils.to_bool(val)
     self.msr[0] &= 0xfd
     self.msr[0] |= 0x02 if val else 0x00
Пример #25
0
 def set_watchdog_idle(self, val):
     val = Utils.to_bool(val)
     self.msr[0] &= 0xf7
     self.msr[0] |= 0x08 if not val else 0x00
Пример #26
0
 def set_pindetect(self, val):
     val = Utils.to_bool(val)
     self.msr[0] &= 0xfe
     self.msr[0] |= 0x01 if not val else 0x00
Пример #27
0
 def set_low_voltage(self, val):
     val = Utils.to_int(val)
     if val not in range(0, 8):
         raise ValueError("must be one of %s" % list(range(0, 8)))
     self.msr[1] &= 0xf8
     self.msr[1] |= val
Пример #28
0
 def set_p20_state(self, val):
     val = Utils.to_bool(val)
     self.msr[1] &= 0xf7
     self.msr[1] |= 0x08 if val else 0x00
Пример #29
0
 def set_uart_passthrough(self, val):
     val = Utils.to_bool(val)
     self.msr[2] &= 0xbf
     self.msr[2] |= 0x40 if val else 0x00
Пример #30
0
 def set_uart_passthrough(self, val):
     val = Utils.to_bool(val)
     self.msr[1] &= 0xef
     self.msr[1] |= 0x10 if val else 0x00
Пример #31
0
 def set_uart_passthrough(self, val):
     val = Utils.to_bool(val)
     self.msr[2] &= 0xbf
     self.msr[2] |= 0x40 if val else 0x00
Пример #32
0
 def set_epwm_pp(self, val):
     val = Utils.to_bool(val)
     self.msr[1] &= 0xfb
     self.msr[1] |= 0x04 if val else 0x00
Пример #33
0
 def set_reset_pin_enabled(self, val):
     val = Utils.to_bool(val)
     self.msr[0] &= 0xfe
     self.msr[0] |= 0x01 if bool(val) else 0x00
Пример #34
0
 def set_uart1_remap(self, val):
     val = Utils.to_bool(val)
     self.msr[1] &= 0xbf
     self.msr[1] |= 0x40 if val else 0x00
Пример #35
0
 def set_xram(self, val):
     val = Utils.to_bool(val)
     self.msr &= 0xbf
     self.msr |= 0x40 if bool(val) else 0x00
Пример #36
0
 def set_flash_split(self, val):
     num_val = Utils.to_int(val)
     if num_val < 512 or num_val > 65024 or (num_val % 512) != 0:
         raise ValueError("must be between 512 and 65024 bytes and a multiple of 512 bytes")
     self.msr[4] = num_val // 256
Пример #37
0
 def set_reset_pin_enabled(self, val):
     val = Utils.to_bool(val)
     self.msr[0] &= 0xfe
     self.msr[0] |= 0x01 if bool(val) else 0x00
Пример #38
0
 def set_t6(self, val):
     val = Utils.to_bool(val)
     self.msr &= 0xfe
     self.msr |= 0x01 if not bool(val) else 0x00
Пример #39
0
 def set_watchdog(self, val):
     val = Utils.to_bool(val)
     self.msr &= 0x7f
     self.msr |= 0x80 if not bool(val) else 0x00
Пример #40
0
 def set_pindetect(self, val):
     val = Utils.to_bool(val)
     self.msr &= 0xfb
     self.msr |= 0x04 if not bool(val) else 0x00
Пример #41
0
 def set_watchdog(self, val):
     val = Utils.to_bool(val)
     self.msr[0] &= 0xdf
     self.msr[0] |= 0x20 if not val else 0x00
Пример #42
0
 def set_ee_erase(self, val):
     val = Utils.to_bool(val)
     self.msr &= 0xf7
     self.msr |= 0x08 if not bool(val) else 0x00
Пример #43
0
 def set_xram(self, val):
     val = Utils.to_bool(val)
     self.msr &= 0xbf
     self.msr |= 0x40 if bool(val) else 0x00
Пример #44
0
 def test_to_bool(self):
     """Test special utility function for bool conversion"""
     self.assertTrue(Utils.to_bool(True))
     self.assertTrue(Utils.to_bool("true"))
     self.assertTrue(Utils.to_bool("True"))
     self.assertTrue(Utils.to_bool("t"))
     self.assertTrue(Utils.to_bool("T"))
     self.assertTrue(Utils.to_bool(1))
     self.assertTrue(Utils.to_bool(-1))
     self.assertFalse(Utils.to_bool(0))
     self.assertFalse(Utils.to_bool(None))
     self.assertFalse(Utils.to_bool("false"))
     self.assertFalse(Utils.to_bool("False"))
     self.assertFalse(Utils.to_bool("f"))
     self.assertFalse(Utils.to_bool("F"))
     self.assertFalse(Utils.to_bool(""))
Пример #45
0
 def set_eeprom_lvd(self, val):
     val = Utils.to_bool(val)
     self.msr[1] &= 0x7f
     self.msr[1] |= 0x80 if val else 0x00
Пример #46
0
 def test_to_bool(self):
     """Test special utility function for bool conversion"""
     self.assertTrue(Utils.to_bool(True))
     self.assertTrue(Utils.to_bool("true"))
     self.assertTrue(Utils.to_bool("True"))
     self.assertTrue(Utils.to_bool("t"))
     self.assertTrue(Utils.to_bool("T"))
     self.assertTrue(Utils.to_bool(1))
     self.assertTrue(Utils.to_bool(-1))
     self.assertFalse(Utils.to_bool(0))
     self.assertFalse(Utils.to_bool(None))
     self.assertFalse(Utils.to_bool("false"))
     self.assertFalse(Utils.to_bool("False"))
     self.assertFalse(Utils.to_bool("f"))
     self.assertFalse(Utils.to_bool("F"))
     self.assertFalse(Utils.to_bool(""))
Пример #47
0
 def set_ee_erase(self, val):
     val = Utils.to_bool(val)
     self.msr[3] &= 0xfd
     self.msr[3] |= 0x02 if val else 0x00
Пример #48
0
 def test_hexstr(self):
     """Test byte array formatter"""
     self.assertEqual(Utils.hexstr([10]), "0A")
     self.assertEqual(Utils.hexstr([1, 2, 3]), "010203")
     with self.assertRaises(Exception):
         Utils.hexstr([400, 500])
Пример #49
0
 def set_p33_state(self, val):
     val = Utils.to_bool(val)
     self.msr[2] &= 0xf7
     self.msr[2] |= 0x08 if val else 0x00
Пример #50
0
 def set_ale(self, val):
     val = Utils.to_bool(val)
     self.msr &= 0xdf
     self.msr |= 0x20 if bool(val) else 0x00
Пример #51
0
 def set_t6(self, val):
     val = Utils.to_bool(val)
     self.msr &= 0xfe
     self.msr |= 0x01 if not bool(val) else 0x00
Пример #52
0
 def set_epwm_pp(self, val):
     val = Utils.to_bool(val)
     self.msr[1] &= 0xfb
     self.msr[1] |= 0x04 if val else 0x00
Пример #53
0
 def set_ee_erase(self, val):
     val = Utils.to_bool(val)
     self.msr &= 0xf7
     self.msr |= 0x08 if not bool(val) else 0x00
Пример #54
0
 def set_eeprom_lvd(self, val):
     val = Utils.to_bool(val)
     self.msr[1] &= 0x7f
     self.msr[1] |= 0x80 if val else 0x00
Пример #55
0
 def set_lvrs(self, val):
     val = Utils.to_bool(val);
     self.msr[1] &= 0xbf
     self.msr[1] |= 0x40 if val else 0x00
Пример #56
0
 def set_uart_passthrough(self, val):
     val = Utils.to_bool(val)
     self.msr[1] &= 0xef
     self.msr[1] |= 0x10 if val else 0x00
Пример #57
0
 def test_hexstr(self):
     """Test byte array formatter"""
     self.assertEqual(Utils.hexstr([10]), "0A")
     self.assertEqual(Utils.hexstr([1, 2, 3]), "010203")
     with self.assertRaises(Exception):
         Utils.hexstr([400, 500])
Пример #58
0
 def set_ee_erase(self, val):
     val = Utils.to_bool(val);
     self.msr[12] &= 0xfd
     self.msr[12] |= 0x02 if not val else 0x00