|
41 | 41 | //| This allocates a very large framebuffer and is most likely to succeed
|
42 | 42 | //| the earlier it is attempted.
|
43 | 43 | //|
|
44 |
| -//| Each dp and dn pair of pins must be neighboring, such as 19 and 20. |
45 |
| -//| They must also be ordered the same way. In other words, dp must be |
46 |
| -//| less than dn for all pairs or dp must be greater than dn for all pairs. |
| 44 | +//| On RP2040, each dp and dn pair of pins must be neighboring, such as |
| 45 | +//| 19 and 20. They must also be ordered the same way. In other words, |
| 46 | +//| dp must be less than dn for all pairs or dp must be greater than dn |
| 47 | +//| for all pairs. |
| 48 | +//| |
| 49 | +//| On RP2350, all pins must be an HSTX output but can be in any order. |
47 | 50 | //|
|
48 | 51 | //| The framebuffer pixel format varies depending on color_depth:
|
49 | 52 | //|
|
|
53 | 56 | //| * 8 - Each byte is a pixels in RGB332 format.
|
54 | 57 | //| * 16 - Each two bytes are a pixel in RGB565 format.
|
55 | 58 | //|
|
56 |
| -//| Two output resolutions are currently supported, 640x480 and 800x480. |
57 |
| -//| Monochrome framebuffers (color_depth=1 or 2) must be full resolution. |
58 |
| -//| Color framebuffers must be half resolution (320x240 or 400x240) and |
59 |
| -//| pixels will be duplicated to create the signal. |
| 59 | +//| Output resolution support varies between the RP2040 and RP2350. |
| 60 | +//| |
| 61 | +//| On RP2040, two output resolutions are currently supported, 640x480 |
| 62 | +//| and 800x480. Monochrome framebuffers (color_depth=1 or 2) must be |
| 63 | +//| full resolution. Color framebuffers must be half resolution (320x240 |
| 64 | +//| or 400x240) and pixels will be duplicated to create the signal. |
| 65 | +//| |
| 66 | +//| On RP2350, output resolution is always 640x480. Monochrome |
| 67 | +//| framebuffers (color_depth=1 or 2) must be full resolution. 4-bit |
| 68 | +//| color must also be full resolution. 8-bit color can be half or full |
| 69 | +//| resolution. 16-bit color must be half resolution due to RAM |
| 70 | +//| limitations. |
60 | 71 | //|
|
61 | 72 | //| A Framebuffer is often used in conjunction with a
|
62 | 73 | //| `framebufferio.FramebufferDisplay`.
|
63 | 74 | //|
|
64 |
| -//| :param int width: the width of the target display signal. Only 320, 400, 640 or 800 is currently supported depending on color_depth. |
65 |
| -//| :param int height: the height of the target display signal. Only 240 or 480 is currently supported depending on color_depth. |
| 75 | +//| :param int width: the width of the target display signal. Only 320, 400, 640 or 800 is currently supported depending on color_depth and chip set. |
| 76 | +//| :param int height: the height of the target display signal. Only 240 or 480 is currently supported depending on color_depth and chip set. |
66 | 77 | //| :param ~microcontroller.Pin clk_dp: the positive clock signal pin
|
67 | 78 | //| :param ~microcontroller.Pin clk_dn: the negative clock signal pin
|
68 | 79 | //| :param ~microcontroller.Pin red_dp: the positive red signal pin
|
|
72 | 83 | //| :param ~microcontroller.Pin blue_dp: the positive blue signal pin
|
73 | 84 | //| :param ~microcontroller.Pin blue_dn: the negative blue signal pin
|
74 | 85 | //| :param int color_depth: the color depth of the framebuffer in bits. 1, 2 for grayscale
|
75 |
| -//| and 8 or 16 for color |
| 86 | +//| and 4 (RP2350 only), 8 or 16 for color |
76 | 87 | //| """
|
77 | 88 |
|
78 | 89 | static mp_obj_t picodvi_framebuffer_make_new(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *all_args) {
|
|
0 commit comments